/*
Theme Name: AMAND
Author: Koenigspunkt
Template: blocksy
Version: 1.0.0
*/
:root {
  --theme-button-font-family: var(--theme-font-family);
  --theme-button-font-weight: 700;
  --theme-button-letter-spacing: 0.5px;
  --theme-button-text-transform: uppercase;
  --theme-font-size-h1: 52px;
  --theme-font-size-h2: 40px;
  --theme-font-size-h3: 24px;
  --theme-text-button-font-size: 15px;
}

.elementor .elementor-element.listing-page h1.elementor-heading-title {
  text-transform: uppercase;
}
.elementor .elementor-element.listing-page h1.elementor-heading-title::before {
  display: none;
}
.elementor .elementor-element.no-space {
  margin-top: 0;
  margin-bottom: 0;
  row-gap: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.elementor .elementor-element .elementor-heading-title {
  color: var(--theme-palette-color-4) !important;
  line-height: var(--theme-line-height);
}
@media (min-width: 768px) {
  .elementor .elementor-element h2.elementor-heading-title {
    position: relative;
    margin-top: 0.75em;
  }
  .elementor .elementor-element h2.elementor-heading-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: -0.75em;
    width: 265px;
    height: 1px;
    background-color: var(--theme-palette-color-4);
  }
}
.elementor .elementor-element.h1 h2.elementor-heading-title {
  margin-top: auto;
}
@media (min-width: 1025px) {
  .elementor .elementor-element.h1 h2.elementor-heading-title {
    font-size: var(--theme-font-size-h1);
  }
}
.elementor .elementor-element.section__hero h2.elementor-heading-title::before {
  background-color: transparent !important;
}
.elementor .elementor-element.inverted,
.elementor .elementor-element.inverted .elementor-widget-text-editor {
  color: var(--theme-palette-color-5) !important;
}
.elementor .elementor-element.inverted .elementor-heading-title,
.elementor .elementor-element.inverted .elementor-image-box-title {
  color: var(--theme-palette-color-5) !important;
}
.elementor .elementor-element.inverted h2.elementor-heading-title::before {
  background-color: var(--theme-palette-color-5);
}
.elementor .elementor-element.inverted .h1 h2.elementor-heading-title::before {
  background-color: transparent !important;
}
.elementor .section__address p {
  font-size: calc(var(--theme-font-size) * 0.85);
  line-height: calc(var(--theme-line-height) * 0.85);
  margin-block-end: calc(var(--theme-content-spacing) / 2);
}
.elementor .section__address p:last-child {
  margin-block-end: 0;
}

.elementor-counter .elementor-counter-title {
  font-size: var(--theme-font-size);
}
.elementor-counter .elementor-counter-number {
  font-size: var(--theme-font-size-h1);
}

:lang(de) p,
:lang(de) li,
:lang(de) td,
:lang(de) blockquote,
:lang(de) .elementor-widget-text-editor {
  hyphens: auto;
  -webkit-hyphens: auto;
  hyphenate-limit-chars: 6 3 3;
  overflow-wrap: break-word;
}
:lang(de) h1, :lang(de) h2, :lang(de) h3, :lang(de) h4, :lang(de) h5, :lang(de) h6,
:lang(de) .elementor-heading-title {
  hyphens: auto;
  -webkit-hyphens: auto;
  hyphenate-limit-chars: 10 4 4;
  overflow-wrap: break-word;
}

@media (min-width: 1700px) {
  body {
    font-size: 20px;
  }
  h1 {
    font-size: 64px;
  }
  h2 {
    font-size: 40px;
  }
  h3 {
    font-size: 32px;
  }
  h4 {
    font-size: 32px;
  }
  h5 {
    font-size: 18px;
  }
  h6 {
    font-size: 16px;
  }
}
.elementor-element.inverted .elementor-button {
  background-color: var(--theme-palette-color-5);
  color: var(--theme-palette-color-4);
}
.elementor-element.inverted .elementor-button:hover, .elementor-element.inverted .elementor-button:focus {
  background-color: var(--theme-palette-color-3);
  color: var(--theme-palette-color-5);
}
.elementor-element.inverted .elementor-element.ghost-button .elementor-button {
  background-color: var(--theme-palette-color-8);
  color: var(--theme-palette-color-5);
  border: 2px solid var(--theme-palette-color-5);
}
.elementor-element.inverted .elementor-element.ghost-button .elementor-button:hover, .elementor-element.inverted .elementor-element.ghost-button .elementor-button:focus {
  background-color: var(--theme-palette-color-5);
  color: var(--theme-palette-color-4);
}
.elementor-element.inverted .elementor-element.text-button .elementor-button {
  background-color: var(--theme-palette-color-8);
  color: var(--theme-palette-color-5);
  border: 2px solid var(--theme-palette-color-8);
  fill: var(--theme-palette-color-5);
}
.elementor-element.inverted .elementor-element.text-button .elementor-button:hover, .elementor-element.inverted .elementor-element.text-button .elementor-button:focus {
  background-color: var(--theme-palette-color-8);
  color: var(--theme-palette-color-2);
  fill: var(--theme-palette-color-2);
}

[type=submit],
.elementor-button {
  background-color: var(--theme-palette-color-4);
  color: var(--theme-palette-color-5);
  border-radius: var(--theme-button-border-radius);
  font-family: var(--theme-button-font-family, inherit);
  font-weight: var(--theme-button-font-weight) !important;
  text-transform: var(--theme-button-text-transform);
  letter-spacing: var(--theme-button-letter-spacing) !important;
}
[type=submit]:hover, [type=submit]:focus,
.elementor-button:hover,
.elementor-button:focus {
  background-color: var(--theme-palette-color-5);
  color: var(--theme-palette-color-4);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.elementor-element.ghost-button .elementor-button {
  background-color: var(--theme-palette-color-8);
  color: var(--theme-palette-color-4);
  border: 2px solid var(--theme-palette-color-4);
}
.elementor-element.ghost-button .elementor-button:hover, .elementor-element.ghost-button .elementor-button:focus {
  background-color: var(--theme-palette-color-4);
  color: var(--theme-palette-color-5);
}

.elementor-element.text-button .elementor-button {
  background-color: var(--theme-palette-color-8);
  color: var(--theme-palette-color-4);
  border: 0 solid var(--theme-palette-color-8);
  fill: var(--theme-palette-color-4);
  padding: 0;
}
.elementor-element.text-button .elementor-button:hover, .elementor-element.text-button .elementor-button:focus {
  background-color: var(--theme-palette-color-8);
  color: var(--theme-palette-color-3);
  fill: var(--theme-palette-color-3);
  box-shadow: none;
}

.ct-header-cta .ct-button-ghost.btn-contact {
  position: relative;
  color: var(--theme-palette-color-5);
  border: none;
  text-transform: none;
  font-weight: 400;
}
.ct-header-cta .ct-button-ghost.btn-contact:hover {
  color: var(--theme-palette-color-1);
  background-color: transparent;
}
.ct-header-cta .ct-button-ghost.btn-contact:before {
  content: "a";
  position: absolute;
  left: -5px;
  top: 0;
  transform: translateY(40%);
  width: calc(var(--theme-font-size) * 2);
  height: calc(var(--theme-font-size) * 2);
  background-color: var(--theme-palette-color-5);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M2,16c-.55,0-1.02-.2-1.41-.59-.39-.39-.59-.86-.59-1.41V2C0,1.45.2.98.59.59c.39-.39.86-.59,1.41-.59h16c.55,0,1.02.2,1.41.59.39.39.59.86.59,1.41v12c0,.55-.2,1.02-.59,1.41-.39.39-.86.59-1.41.59H2ZM10,9L2,4v10h16V4l-8,5ZM10,7l8-5H2l8,5ZM2,4v-2,12V4Z'/%3E%3C/svg%3E") no-repeat center/contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M2,16c-.55,0-1.02-.2-1.41-.59-.39-.39-.59-.86-.59-1.41V2C0,1.45.2.98.59.59c.39-.39.86-.59,1.41-.59h16c.55,0,1.02.2,1.41.59.39.39.59.86.59,1.41v12c0,.55-.2,1.02-.59,1.41-.39.39-.86.59-1.41.59H2ZM10,9L2,4v10h16V4l-8,5ZM10,7l8-5H2l8,5ZM2,4v-2,12V4Z'/%3E%3C/svg%3E") no-repeat center/contain;
}
.ct-header-cta .ct-button-ghost.btn-contact:hover:before {
  background-color: var(--theme-palette-color-1);
}

.page-template-default .ct-header-cta .ct-button-ghost.btn-contact {
  color: var(--theme-palette-color-4);
}
.page-template-default .ct-header-cta .ct-button-ghost.btn-contact:hover {
  color: var(--theme-palette-color-3);
}
.page-template-default .ct-header-cta .ct-button-ghost.btn-contact:before {
  background-color: var(--theme-palette-color-4);
}
.page-template-default .ct-header-cta .ct-button-ghost.btn-contact:hover:before {
  background-color: var(--theme-palette-color-3);
}

.page-template-elementor_theme .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact,
.post-template-default .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact {
  color: var(--theme-palette-color-4);
}
.page-template-elementor_theme .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact:hover,
.post-template-default .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact:hover {
  color: var(--theme-palette-color-3);
}
.page-template-elementor_theme .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact:before,
.post-template-default .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact:before {
  background-color: var(--theme-palette-color-4);
}
.page-template-elementor_theme .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact:hover:before,
.post-template-default .ct-header [data-sticky*=yes] .ct-header-cta .ct-button-ghost.btn-contact:hover:before {
  background-color: var(--theme-palette-color-3);
}

.btn-contact .elementor-button {
  position: relative;
  color: var(--theme-palette-color-5);
  background-color: transparent;
  border: none;
  text-transform: none;
  font-weight: 400 !important;
  font-size: var(--theme-font-size);
}
.btn-contact .elementor-button:hover {
  color: var(--theme-palette-color-1) !important;
  background-color: transparent;
  box-shadow: none;
}
.btn-contact .elementor-button:before {
  content: "a";
  position: absolute;
  left: -3px;
  top: 0;
  transform: translateY(43%);
  width: calc(var(--theme-font-size) * 2);
  height: calc(var(--theme-font-size) * 2);
  background-color: var(--theme-palette-color-5);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M2,16c-.55,0-1.02-.2-1.41-.59-.39-.39-.59-.86-.59-1.41V2C0,1.45.2.98.59.59c.39-.39.86-.59,1.41-.59h16c.55,0,1.02.2,1.41.59.39.39.59.86.59,1.41v12c0,.55-.2,1.02-.59,1.41-.39.39-.86.59-1.41.59H2ZM10,9L2,4v10h16V4l-8,5ZM10,7l8-5H2l8,5ZM2,4v-2,12V4Z'/%3E%3C/svg%3E") no-repeat center/contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M2,16c-.55,0-1.02-.2-1.41-.59-.39-.39-.59-.86-.59-1.41V2C0,1.45.2.98.59.59c.39-.39.86-.59,1.41-.59h16c.55,0,1.02.2,1.41.59.39.39.59.86.59,1.41v12c0,.55-.2,1.02-.59,1.41-.39.39-.86.59-1.41.59H2ZM10,9L2,4v10h16V4l-8,5ZM10,7l8-5H2l8,5ZM2,4v-2,12V4Z'/%3E%3C/svg%3E") no-repeat center/contain;
}
.btn-contact .elementor-button:hover:before {
  background-color: var(--theme-palette-color-1);
}

.page-template-default #main-container .ct-header [data-id=button] {
  --theme-button-background-initial-color: var(--theme-palette-color-2);
  --theme-button-background-hover-color: var(--theme-palette-color-4);
}
.page-template-default #main-container .ct-header .ct-sticky-container {
  background-color: white !important;
}
.page-template-default #main-container .ct-header .ct-sticky-container svg.ct-icon {
  fill: var(--theme-palette-color-4);
}
.page-template-default #main-container .ct-header .ct-sticky-container svg.ct-icon:hover, .page-template-default #main-container .ct-header .ct-sticky-container svg.ct-icon:focus {
  fill: var(--theme-palette-color-3);
}
.page-template-default #main-container .ct-header ul > li > a {
  color: var(--theme-palette-color-4) !important;
}
.page-template-default #main-container .ct-header ul > li > a:hover, .page-template-default #main-container .ct-header ul > li > a:focus {
  color: var(--theme-palette-color-3) !important;
}
.page-template-default #main-container .ct-header .ct-button-ghost {
  --theme-button-text-initial-color: var(--theme-palette-color-4);
  --theme-button-text-hover-color: var(--theme-palette-color-2);
  border-color: var(--theme-palette-color-4);
}
.page-template-default #main-container .ct-header .sticky-logo {
  display: block;
}
.page-template-default #main-container .ct-header .default-logo {
  display: none;
}
.page-template-default #main-container .listing-page .e-con-inner {
  padding-block-end: 0;
}
.page-template-default #main-container .listing-page .e-con-inner h1 {
  text-transform: uppercase;
}

.page-template-elementor_theme #main-container .ct-header .ct-sticky-container [data-transparent-row=yes] svg.ct-icon,
.post-template-default #main-container .ct-header .ct-sticky-container [data-transparent-row=yes] svg.ct-icon {
  fill: var(--theme-palette-color-5);
}
.page-template-elementor_theme #main-container .ct-header .ct-sticky-container [data-transparent-row=yes] svg.ct-icon:hover, .page-template-elementor_theme #main-container .ct-header .ct-sticky-container [data-transparent-row=yes] svg.ct-icon:focus,
.post-template-default #main-container .ct-header .ct-sticky-container [data-transparent-row=yes] svg.ct-icon:hover,
.post-template-default #main-container .ct-header .ct-sticky-container [data-transparent-row=yes] svg.ct-icon:focus {
  fill: var(--theme-palette-color-1);
}

#offcanvas .ct-panel-inner {
  width: 100vw;
  max-width: inherit;
  background-color: var(--theme-palette-color-3) !important;
}
#offcanvas .ct-panel-inner .ct-panel-actions .ct-toggle-close svg.ct-icon {
  width: 24px;
  height: 24px;
  fill: var(--theme-palette-color-1);
  transform: translateY(30px);
}
#offcanvas .ct-panel-inner .ct-panel-actions .ct-toggle-close svg.ct-icon:hover {
  fill: var(--theme-palette-color-1);
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner {
  padding: 0 35px 35px;
}
@media (max-width: 1024px) {
  #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner {
    padding: 55px 35px 35px;
  }
  #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner svg.ct-icon {
    fill: var(--theme-palette-color-5);
  }
  #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .ct-toggle-dropdown-mobile:hover svg.ct-icon {
    fill: var(--theme-palette-color-2);
  }
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-head .e-con-inner {
  padding-block-start: 0;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .ct-header-text {
  display: block;
}
@media (max-width: 1024px) {
  #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .ct-header-text {
    display: none;
  }
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap {
  gap: 40px;
  width: 92vw;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu {
  flex-direction: column;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu .menu-item {
  border-bottom: 1px solid var(--theme-palette-color-5);
  padding: 12px 0;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children {
  position: relative;
  cursor: pointer;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children > a {
  display: flex;
  align-items: center;
  padding-right: calc(var(--theme-font-size) * 2);
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children > a::after {
  content: none !important;
  display: none !important;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: calc(var(--theme-font-size) * 1.6);
  height: calc(var(--theme-font-size) * 1.6);
  background-color: var(--theme-palette-color-5);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M0,36.3L32.5,3.8H4.7l-.2-3.7h34.5v34.5l-3.7-.2V6.5L2.7,38.9,0,36.3Z'/%3E%3C/svg%3E") no-repeat center/contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M0,36.3L32.5,3.8H4.7l-.2-3.7h34.5v34.5l-3.7-.2V6.5L2.7,38.9,0,36.3Z'/%3E%3C/svg%3E") no-repeat center/contain;
  opacity: 0;
  transition: opacity 0.15s ease;
  pointer-events: none;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children:hover::after, #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children:focus-within::after {
  opacity: 1;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children.is-active::after, #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children.is-open::after {
  opacity: 1 !important;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li.menu-item-has-children .sub-menu {
  display: none;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-menu .boostify-menu > li > a {
  text-transform: inherit;
  padding: 0;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu {
  list-style: none;
  margin: 0;
  padding: 0;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li {
  padding: 12px 0;
  border-bottom: 1px solid var(--theme-palette-color-5);
  position: relative;
  cursor: pointer;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li > a {
  display: flex;
  align-items: center;
  padding-right: calc(var(--theme-font-size) * 2);
  line-height: 50px;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li > a::after {
  content: none !important;
  display: none !important;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: calc(var(--theme-font-size) * 1.6);
  height: calc(var(--theme-font-size) * 1.6);
  background-color: var(--theme-palette-color-5);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M0,36.3L32.5,3.8H4.7l-.2-3.7h34.5v34.5l-3.7-.2V6.5L2.7,38.9,0,36.3Z'/%3E%3C/svg%3E") no-repeat center/contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 39'%3E%3Cpath d='M0,36.3L32.5,3.8H4.7l-.2-3.7h34.5v34.5l-3.7-.2V6.5L2.7,38.9,0,36.3Z'/%3E%3C/svg%3E") no-repeat center/contain;
  opacity: 0;
  transition: opacity 0.15s ease;
  pointer-events: none;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li:hover::after, #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li:focus-within::after {
  opacity: 1;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li.is-active::after, #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-sub .oc-submenu > li.is-open::after {
  opacity: 1 !important;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-preview-img {
  background-size: cover;
  background-position: center;
}
@media (max-width: 1024px) {
  #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-wrap {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
@media (min-width: 1025px) {
  #offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .ct-header-mobile-menu {
    display: block !important;
  }
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-preview .oc-preview-img {
  width: 100%;
  aspect-ratio: 16/9;
  background-size: cover;
  background-position: center;
  margin-bottom: 40px;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-preview .oc-preview-body .oc-preview-title {
  font-size: var(--theme-font-size-h3);
  margin-bottom: 30px;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-preview .oc-preview-body .oc-preview-excerpt {
  color: var(--theme-palette-color-5);
  margin-bottom: 30px;
}
#offcanvas .ct-panel-inner .ct-panel-content .ct-panel-content-inner .oc-wrap .oc-preview .oc-preview-body .oc-preview-cta {
  font-family: var(--theme-button-font-family, inherit);
  font-weight: var(--theme-button-font-weight) !important;
  text-transform: var(--theme-button-text-transform);
  letter-spacing: var(--theme-button-letter-spacing) !important;
}
#offcanvas .ct-panel-inner .ct-panel-content a {
  color: var(--theme-palette-color-5);
}

.relative {
  position: relative;
}
.relative .e-flex,
.relative .e-con-boxed,
.relative .e-flex,
.relative .e-child,
.relative .e-con,
.relative .e-parent,
.relative .e-con-inner,
.relative .e-con-full,
.relative .elementor-widget {
  position: static;
}

@media (min-width: 1025px) {
  .margin-right {
    padding-right: 15%;
  }
}

.cutout-triangle {
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: bottom;
          mask-position: bottom;
  mask-mode: alpha;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 323 170'%3E%3Cpolygon points='0 170 323 170 161.5 0 0 170'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 323 170'%3E%3Cpolygon points='0 170 323 170 161.5 0 0 170'/%3E%3C/svg%3E");
}
.cutout-triangle p {
  margin: auto;
}

.reverse {
  transform: rotate(180deg);
}

.cutout-top {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 928 950.57'%3E%3Cpolygon points='0 660.04 145.54 813 928 .25 0 0 0 660.04'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 928 950.57'%3E%3Cpolygon points='0 660.04 145.54 813 928 .25 0 0 0 660.04'/%3E%3C/svg%3E");
}

.cutout-bottom {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 928 950.57'%3E%3Cpolygon points='64 950.57 928 950.57 498.52 498.57 64 950.57'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 928 950.57'%3E%3Cpolygon points='64 950.57 928 950.57 498.52 498.57 64 950.57'/%3E%3C/svg%3E");
}

.cutout-top,
.cutout-bottom {
  --margin-full: calc(100vw - var(--theme-container-width));
  position: absolute;
  bottom: 0;
  right: 49vw;
  -webkit-mask-size: 50vw auto;
          mask-size: 50vw auto;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  mask-mode: alpha;
  height: 100%;
}
.cutout-top img,
.cutout-bottom img {
  height: 100%;
}

.hero-cutout {
  position: absolute;
  right: 0;
  height: 100%;
  aspect-ratio: 1020/896;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1020 896'%3E%3Cpolygon points='56.95 0 801.5 775.96 1020 547.94 1020 0 56.95 0'/%3E%3Cpolygon points='0 896 433.52 444.99 867.01 896 0 896'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1020 896'%3E%3Cpolygon points='56.95 0 801.5 775.96 1020 547.94 1020 0 56.95 0'/%3E%3Cpolygon points='0 896 433.52 444.99 867.01 896 0 896'/%3E%3C/svg%3E");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  mask-mode: alpha;
}

.section__hero.video {
  height: 56.25vw;
}
.section__hero .elementor-background-video-container {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.section__hero.no-overlay::after {
  display: none;
}
.section__hero::before {
  z-index: 3;
}
.section__hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.85) 100%);
}

.elementor-element {
  z-index: 3;
  padding-bottom: 0.25em;
}

h1.elementor-heading-title,
.tagline {
  position: relative !important;
}
h1.elementor-heading-title::before,
.tagline::before {
  content: "";
  position: absolute;
  left: 0;
  top: -0.25em;
  width: 265px;
  height: 1px;
  background-color: var(--theme-palette-color-4);
}

.inverted h1.elementor-heading-title::before,
.inverted .tagline::before {
  background-color: var(--theme-palette-color-5);
}

.elementor-shortcode h2.elementor-heading-title {
  margin-top: 0 !important;
}
.elementor-shortcode h2.elementor-heading-title:before {
  display: none;
}

h1.elementor-heading-title {
  margin-top: 0.75em;
}

.tagline {
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.9px;
  padding-top: 0.75em;
}

.tagline + .post-heading h1.elementor-heading-title {
  margin-top: 0;
}
.tagline + .post-heading h1.elementor-heading-title::before {
  display: none;
}

h2.elementor-heading-title {
  margin-top: 0;
}

/* Elementor shortcode wrapper: prevent height collapse and baseline gaps */
.elementor-widget-shortcode,
.elementor-widget-shortcode .elementor-widget-container,
.elementor-shortcode {
  height: 100%;
}

/* Your hero section wrapper: prevent any overflow artifacts */
.hero-section,
.elementor-section.hero-section {
  overflow: hidden;
}

.hero-slices {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 520px;
  overflow: hidden;
  --gap: 10px;
  --tri-width: min(42vw, 720px);
  --axis-x: 58%;
  /* Linke dunkle Fläche */
}
.hero-slices__left {
  position: absolute;
  inset: 0;
  background: var(--theme-palette-color-4);
  z-index: 1;
  clip-path: polygon(0 0, var(--axis-x) 0, calc(var(--axis-x) - 25%) 100%, 0 100%);
}
.hero-slices {
  /* Gemeinsame Dreiecks-Basis */
}
.hero-slices__tri {
  position: absolute;
  background-image: var(--hero-img);
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 2;
  aspect-ratio: 123/66;
}
.hero-slices {
  /* Oberes Dreieck (invertiert) */
}
.hero-slices__tri--top {
  top: 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  height: 100%;
  padding-bottom: 10px;
}
.hero-slices {
  /* Divider */
}
.hero-slices__divider {
  position: absolute;
  left: var(--axis-x);
  width: var(--tri-width);
  height: var(--gap);
  top: calc(var(--tri-width) / 0.8660254);
  background: var(--theme-palette-color-4);
  z-index: 3;
}
.hero-slices {
  /* Unteres Dreieck */
}
.hero-slices__tri--bottom {
  left: 20%;
  bottom: 0;
  clip-path: polygon(50% 0, 0 100%, 100% 100%);
  height: 40%;
}

.single-post-hero {
  --margin-full: calc(100vw - var(--theme-container-width));
  margin-left: calc(var(--margin-full) * 1.5);
}

.single-page-content-wrapper {
  width: 100%;
}

.single-page-content {
  width: var(--theme-container-width);
  margin-inline: auto;
}

.elementor-element {
  padding-bottom: 0;
}

.lh-1 .elementor-counter-title {
  line-height: unset !important;
  padding-top: 1.25rem !important;
}

.ct-footer {
  z-index: 50;
}

.we-effect .swiper,
.we-effect .swiper-wrapper,
.we-effect .elementor-loop-container {
  overflow: visible;
}
.we-effect .swiper-wrapper,
.we-effect .elementor-loop-container {
  align-items: stretch;
}
.we-effect .elementor-loop-container {
  display: flex !important;
  flex-wrap: wrap;
}
.we-effect .swiper-slide,
.we-effect .e-loop-item {
  flex: 1 1 0 !important;
  width: auto !important;
  transition: flex 0.6s ease, transform 0.6s ease;
  overflow: hidden;
  transform-origin: top center;
  position: relative;
  z-index: 1;
}
.we-effect .swiper-slide > .elementor,
.we-effect .e-loop-item > .elementor {
  width: 100%;
  height: 100%;
}
.we-effect .swiper-slide .e-con-boxed,
.we-effect .e-loop-item .e-con-boxed {
  width: 100% !important;
}
.we-effect .swiper-slide .e-con-boxed > .e-con-inner,
.we-effect .e-loop-item .e-con-boxed > .e-con-inner {
  max-width: 100% !important;
  padding-inline: 0 !important;
}
.we-effect .swiper-slide .elementor-widget-button,
.we-effect .e-loop-item .elementor-widget-button {
  opacity: 0;
  transform: scaleY(0.8333333333) translateY(8px);
  transition: opacity 0.6s ease, transform 0.6s ease;
  pointer-events: none;
}
.we-effect .swiper-slide:hover .elementor-widget-button,
.we-effect .e-loop-item:hover .elementor-widget-button {
  opacity: 1;
  pointer-events: auto;
}
.we-effect .swiper-slide .hover-h3 p.elementor-heading-title,
.we-effect .e-loop-item .hover-h3 p.elementor-heading-title {
  transition: font-size 0.3s ease, font-weight 0.3s ease, letter-spacing 0.3s ease;
}
.we-effect .swiper-slide:hover .hover-h3 p.elementor-heading-title,
.we-effect .e-loop-item:hover .hover-h3 p.elementor-heading-title {
  font-size: var(--theme-font-size-h3, 1.5rem);
  font-weight: 400;
  letter-spacing: normal;
}
.we-effect .swiper-slide:hover,
.we-effect .e-loop-item:hover {
  flex: 2 1 0 !important;
  transform: scaleY(1.2);
  overflow: visible;
  z-index: 2;
}
.we-effect .swiper-slide:hover .elementor-widget-heading,
.we-effect .swiper-slide:hover .elementor-widget-button,
.we-effect .swiper-slide:hover .elementor-widget-text-editor,
.we-effect .e-loop-item:hover .elementor-widget-heading,
.we-effect .e-loop-item:hover .elementor-widget-button,
.we-effect .e-loop-item:hover .elementor-widget-text-editor {
  transform: scaleY(0.8333333333);
  transform-origin: top center;
}
.we-effect .swiper-slide:hover .cutout-triangle,
.we-effect .e-loop-item:hover .cutout-triangle {
  height: 120px;
  width: 120px;
}
.we-effect .cutout-triangle {
  height: 80px;
  width: 80px;
  transition: height 0.6s ease, width 0.6s ease;
}
@media (max-width: 1200px) {
  .we-effect .e-loop-item {
    flex-basis: 32% !important;
  }
}
@media (max-width: 1024px) {
  .we-effect .e-loop-item {
    flex-basis: 49% !important;
  }
}
@media (max-width: 767px) {
  .we-effect .e-loop-item {
    flex-basis: 100% !important;
  }
}
@media (max-width: 767px) {
  .we-effect .swiper-slide,
  .we-effect .e-loop-item {
    transform: none !important;
    overflow: visible;
  }
  .we-effect .swiper-slide:hover,
  .we-effect .e-loop-item:hover {
    flex: 1 1 0 !important;
    transform: none !important;
  }
  .we-effect .swiper-slide .elementor-widget-button,
  .we-effect .e-loop-item .elementor-widget-button {
    opacity: 1;
    transform: none;
    pointer-events: auto;
  }
  .we-effect .swiper-slide .hover-h3 p.elementor-heading-title,
  .we-effect .e-loop-item .hover-h3 p.elementor-heading-title {
    font-size: var(--theme-font-size-h3, 1.5rem);
    font-weight: 400;
  }
}

.white {
  --background: var(--theme-palette-color-5);
}

.sand {
  --background: var(--theme-palette-color-1);
}

.color {
  background: var(--background);
}

.full {
  width: 100%;
  height: 100%;
}

.soft-light {
  mix-blend-mode: soft-light;
}

.e-con.e-block {
  display: block;
}

.section__hero {
  position: relative;
  overflow: hidden;
}
.section__hero::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  width: 50%;
  height: 100%;
  z-index: 0;
}
@media (max-width: 1024px) {
  .section__hero::before {
    display: none;
  }
}
.section__intro {
  position: relative;
  overflow: hidden;
}
.section__intro::before {
  content: "";
  position: absolute;
  top: 0;
  right: auto;
  left: 0;
  width: 50%;
  height: 100%;
  z-index: 0;
}
@media (max-width: 1024px) {
  .section__intro::before {
    display: none;
  }
}
.section__intro2 {
  position: relative;
  overflow: hidden;
}
.section__intro2::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  width: 50%;
  height: 100%;
  z-index: 0;
}
@media (max-width: 1024px) {
  .section__intro2::before {
    display: none;
  }
}
.section__fundaments {
  position: relative;
  overflow: hidden;
}
.section__fundaments::before {
  content: "";
  position: absolute;
  top: 0;
  right: auto;
  left: 0;
  width: 50%;
  height: 100%;
  z-index: 0;
  transform: scaleX(-1) scaleY(-1);
}
@media (max-width: 1024px) {
  .section__fundaments::before {
    display: none;
  }
}
.section__contact {
  position: relative;
  overflow: hidden;
}
.section__contact::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  width: 60%;
  height: 100%;
  z-index: 0;
}
@media (max-width: 1200px) {
  .section__contact::before {
    display: none;
  }
}
.section__unity {
  position: relative;
  overflow: hidden;
}
.section__unity::before {
  content: "";
  position: absolute;
  top: 0;
  right: auto;
  left: 0;
  width: 50%;
  height: 100%;
  z-index: 0;
}
@media (max-width: 1024px) {
  .section__unity::before {
    display: none;
  }
}
.section__unity .e-con-inner {
  position: relative;
  z-index: 1;
}

.section__stoerer {
  position: relative;
  height: 400px;
  margin-top: -3em;
}
.section__stoerer::after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(to top, rgb(255, 255, 255), rgba(255, 255, 255, 0), rgb(255, 255, 255));
}

.video-overlay {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-color: #000;
}
.video-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}
.video-overlay .e-con-inner {
  position: relative;
  z-index: 3;
}
.video-overlay .overlay-bg-video {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.video-overlay .overlay-bg-video .overlay-bg-video__el {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transform: scaleX(-1);
}
.video-overlay.dark::after {
  background: rgba(0, 0, 0, 0.45);
}
.video-overlay.light::after {
  background: rgba(255, 255, 255, 0.35);
}

.elementor .text-overlay.elementor-widget.elementor-widget-image-box {
  margin-bottom: -10px;
}
.elementor .text-overlay .elementor-image-box-wrapper {
  position: relative;
}
.elementor .text-overlay .elementor-image-box-img {
  margin-bottom: 0 !important;
  overflow: hidden;
}
.elementor .text-overlay .elementor-image-box-img img {
  display: block;
  width: 100%;
  height: auto;
}
.elementor .text-overlay .elementor-image-box-content {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translateY(-8px);
  z-index: 2;
  padding: 3em 1em 1em;
  color: var(--theme-palette-color-5);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0));
}
.elementor .text-overlay .elementor-image-box-title,
.elementor .text-overlay .elementor-image-box-description {
  margin: 0;
}
.elementor .text-overlay .elementor-image-box-title {
  margin-bottom: 8px;
}
.elementor .text-overlay .elementor-image-box-title a {
  color: inherit;
  text-decoration: none;
}
.elementor .text-overlay .elementor-image-box-description {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transform: translateY(10px);
  transition: opacity 0.25s ease, transform 0.25s ease, max-height 0.25s ease;
}
.elementor .text-overlay:hover .elementor-image-box-description {
  opacity: 1;
  max-height: 100%;
  transform: translateY(0);
}

.text-on-hover-show {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(12px);
  transition: max-height 0.45s ease, opacity 0.3s ease 0.2s, transform 0.3s ease 0.2s;
}
@media (max-width: 767px) {
  .text-on-hover-show {
    max-height: 600px;
    opacity: 1;
    transform: translateY(0);
    transition: none;
  }
}

.text-on-hover:hover .text-on-hover-show {
  max-height: 600px;
  opacity: 1;
  transform: translateY(0);
}

.text-on-hover,
.hover-triangle-grow {
  position: relative;
}
.text-on-hover .card-overlay-link,
.hover-triangle-grow .card-overlay-link {
  position: absolute;
  inset: 0;
  z-index: 9;
}
.text-on-hover .elementor-widget-button,
.text-on-hover .text-on-hover-show,
.hover-triangle-grow .elementor-widget-button,
.hover-triangle-grow .text-on-hover-show {
  position: relative;
  z-index: 2;
}

.imagebox-cta {
  position: relative;
  z-index: 3;
  transform: translateY(1em);
  font-family: var(--theme-button-font-family, inherit);
  font-size: var(--theme-text-button-font-size);
  font-weight: var(--theme-button-font-weight) !important;
  text-transform: var(--theme-button-text-transform);
  letter-spacing: var(--theme-button-letter-spacing) !important;
  color: var(--theme-palette-color-5);
}
.imagebox-cta::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.5em;
  margin-bottom: -0.1em;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='white' d='M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z'/%3E%3C/svg%3E");
}

.section__business-areas .area-card {
  position: relative;
  min-height: 260px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 28px;
}
.section__business-areas .area-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0);
  transition: background 0.3s ease;
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 767px) {
  .section__business-areas .area-card::before {
    background: rgba(0, 0, 0, 0.65);
  }
}
.section__business-areas .area-card:hover::before {
  background: rgba(0, 0, 0, 0.65);
}
.section__business-areas .area-card .text-link {
  position: absolute;
  inset: 0;
  z-index: 2;
}
.section__business-areas .area-card .text-link p {
  margin: 1em;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: calc(var(--theme-font-size) * 2);
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (min-width: 768px) {
  .section__business-areas .area-card .text-link p {
    opacity: 0;
    transform: translateX(-3em);
    transition: opacity 0.25s ease, transform 0.25s ease;
  }
}
.section__business-areas .area-card .text-link::after {
  content: "↗";
  font-size: calc(var(--theme-font-size) * 2);
  position: absolute;
  top: 0;
  right: 0;
  margin: 1em;
}
@media (min-width: 768px) {
  .section__business-areas .area-card .text-link::after {
    opacity: 0;
    transform: translateX(-3em);
    transition: opacity 0.25s ease, transform 0.25s ease;
  }
}
.section__business-areas .area-card:hover .text-link::after {
  opacity: 1;
  transform: translateX(0);
}
.section__business-areas .area-card:hover .text-link p {
  opacity: 1;
  transform: translateX(0);
}

.knowledge-row .imgbox-hoverreveal {
  --reveal-max: 200px;
  --thumb-pt: 166.6667%;
  --thumb-pt-hover: 120%;
}
@media (max-width: 1024px) {
  .knowledge-row .imgbox-hoverreveal {
    --thumb-pt: 125%;
    --thumb-pt-hover: 95%;
  }
}
@media (max-width: 767px) {
  .knowledge-row .imgbox-hoverreveal {
    --thumb-pt: 100%;
    --thumb-pt-hover: 85%;
  }
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post {
  height: 100%;
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-grid-post-holder {
  height: 100%;
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post {
  /* Karte als Grid: oben Bild, unten Content */
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-grid-post-holder-inner {
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post {
  /* -----------------------------
   * Bildbereich
   * ----------------------------- */
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-entry-media {
  position: relative;
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-entry-thumbnail {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #000;
  /* Ratio-Höhe (animierbar) */
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-entry-thumbnail::before {
  content: "";
  display: block;
  padding-top: var(--thumb-pt);
  transition: padding-top 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-entry-thumbnail img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transform: scale(1);
  transition: transform 1.1s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post {
  /* -----------------------------
   * Textbereich (reveal)
   * ----------------------------- */
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-entry-wrapper {
  min-height: var(--reveal-max);
  display: grid;
  grid-template-rows: auto 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-entry-wrapper .eael-entry-content {
  overflow: hidden;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.35s cubic-bezier(0.22, 1, 0.36, 1), transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post {
  /* -----------------------------
   * Hover: Bild kürzer + Text auf
   * ----------------------------- */
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post:hover .eael-entry-thumbnail::before {
  padding-top: var(--thumb-pt-hover);
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post:hover .eael-entry-thumbnail img {
  transform: scale(1.12);
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post:hover .eael-entry-wrapper {
  grid-template-rows: auto 1fr;
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post:hover .eael-entry-wrapper .eael-entry-content {
  opacity: 1;
  transform: translateY(0);
}
.knowledge-row .imgbox-hoverreveal {
  /* -----------------------------
   * Reduced Motion
   * ----------------------------- */
}
@media (prefers-reduced-motion: reduce) {
  .knowledge-row .imgbox-hoverreveal *,
  .knowledge-row .imgbox-hoverreveal *::before,
  .knowledge-row .imgbox-hoverreveal *::after {
    transition: none !important;
  }
}

/* -------------------------------------------------
 * TRIANGLE – Basis + Varianten (spezifisch genug)
 * ------------------------------------------------- */
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-grid-post-holder-inner {
  position: relative;
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-grid-post-holder-inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 26px solid transparent;
  border-right: 26px solid transparent;
  border-top: 32px solid var(--theme-palette-color-5);
  z-index: 5;
  pointer-events: none;
  transition: border-width 0.6s cubic-bezier(0.22, 1, 0.36, 1), border-top-color 0.6s cubic-bezier(0.22, 1, 0.36, 1), transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.knowledge-row .imgbox-hoverreveal .eael-post-grid-container .eael-post-grid .eael-grid-post:hover .eael-grid-post-holder-inner::after {
  border-left-width: 52px;
  border-right-width: 52px;
  border-top-width: 64px;
}
.knowledge-row .imgbox-hoverreveal {
  /* Varianten: gleiche Kette wie Basis */
}
.knowledge-row .imgbox-hoverreveal.sand .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-grid-post-holder-inner::after {
  border-top-color: var(--theme-palette-color-1);
}
.knowledge-row .imgbox-hoverreveal.grey .eael-post-grid-container .eael-post-grid .eael-grid-post .eael-grid-post-holder-inner::after {
  border-top-color: var(--theme-palette-color-2);
}

.process {
  position: relative;
  --text-dim: .62;
  --triangle-x: 12.4%;
  --triangle-opacity: 1;
  --baseline-top: 17rem;
  --baseline-offset: 0rem;
  --baseline-y: calc(var(--baseline-top) + var(--baseline-offset));
  --connector-offset: 1.5rem;
  --step-1-x: 25%;
  --step-2-x: 50%;
  --step-3-x: 75%;
  --step-4-x: 100%;
  --active-line-width: 0%;
  background-image: linear-gradient(to right, var(--theme-palette-color-4), var(--theme-palette-color-4));
  background-repeat: no-repeat;
  background-size: 100% 1px;
  background-position: 0 var(--baseline-top);
}
.process::before {
  content: "";
  position: absolute;
  top: calc(var(--baseline-top) / 1.7);
  left: var(--triangle-x);
  transform: translateX(calc(-50% - 1.85rem));
  width: 0;
  height: 0;
  border-left: 50vw solid transparent;
  border-right: 50vw solid transparent;
  border-bottom: 60vw solid var(--theme-palette-color-1);
  opacity: var(--triangle-opacity);
  transition: left 0.35s ease, opacity 0.25s ease;
  pointer-events: none;
  z-index: -1;
}
.process::after {
  content: "";
  position: absolute;
  left: 0;
  top: var(--baseline-y);
  height: 3px;
  width: var(--active-line-width);
  background: var(--theme-palette-color-4);
  opacity: 0.9;
  transition: width 0.25s ease;
  pointer-events: none;
  z-index: 2;
}
.process:has(.process__step:nth-child(1):hover), .process:has(.process__step:nth-child(1).is-active) {
  --triangle-x: 12.4%;
  --triangle-opacity: 1;
  --active-line-width: var(--step-1-x);
}
.process:has(.process__step:nth-child(2):hover), .process:has(.process__step:nth-child(2).is-active) {
  --triangle-x: 37.8%;
  --triangle-opacity: 1;
  --active-line-width: var(--step-2-x);
}
.process:has(.process__step:nth-child(3):hover), .process:has(.process__step:nth-child(3).is-active) {
  --triangle-x: 63.15%;
  --triangle-opacity: 1;
  --active-line-width: var(--step-3-x);
}
.process:has(.process__step:nth-child(4):hover), .process:has(.process__step:nth-child(4).is-active) {
  --triangle-x: 88.5%;
  --triangle-opacity: 1;
  --active-line-width: var(--step-4-x);
}
.process .process__step {
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .process .process__step {
    padding-right: 3rem;
  }
}
.process .process__step:hover .process__num {
  background: var(--theme-palette-color-4);
  border-color: var(--theme-palette-color-4);
}
.process .process__step:hover .process__num .elementor-heading-title {
  color: var(--theme-palette-color-5) !important;
}
.process .process__step:hover .process__text,
.process .process__step:hover .process__label,
.process .process__step:hover .process__title {
  opacity: 1;
}
.process .process__num {
  width: 74px;
  height: 74px;
  margin: 0 auto;
  border-radius: 50%;
  border: 1px solid var(--theme-palette-color-4);
  background: transparent;
  display: grid;
  place-items: center;
  font-weight: 500;
  position: relative;
  z-index: 2;
  transition: background 0.25s ease, border-color 0.25s ease;
}
.process .process__num .elementor-heading-title {
  transition: color 0.25s ease;
  margin-block-end: 0;
}
.process .process__num::before {
  content: "";
  position: absolute;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 1px solid var(--theme-palette-color-1);
  z-index: -1;
}
.process .process__num::after {
  content: "";
  position: absolute;
  left: 50%;
  top: calc(100% + var(--connector-offset));
  width: 1px;
  height: 7rem;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.35);
}
@media (min-width: 1025px) {
  .process .process__label {
    margin-top: 9rem;
  }
}
@media (max-width: 1024px) {
  .process .process__label {
    margin-top: 1.5rem;
  }
}
.process .process__step.is-active .process__num {
  background: var(--theme-palette-color-4);
  border-color: var(--theme-palette-color-4);
}
.process .process__step.is-active .process__num .elementor-heading-title {
  color: var(--theme-palette-color-5) !important;
}
.process .process__step.is-active .process__num::after {
  background: var(--theme-palette-color-4);
  opacity: 0.6;
}
.process .process__step.is-active .process__title {
  position: relative;
}
.process .process__step.is-active .process__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: -12px;
  width: 40px;
  height: 2px;
  background: var(--theme-palette-color-4);
}
.process .process__step.is-active .process__text,
.process .process__step.is-active .process__label,
.process .process__step.is-active .process__title {
  opacity: 1;
}
.process .process__text,
.process .process__label,
.process .process__title {
  opacity: var(--text-dim);
  transition: opacity 0.2s ease;
}
@media (max-width: 1024px) {
  .process .e-con-inner {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .process::before {
    display: none;
  }
  .process::after {
    display: none;
  }
  .process {
    background-image: none;
  }
  .process .process__num::after {
    display: none;
  }
}

/* Helper (SCSS placeholder) */
.process:has(.process__step:nth-child(2):hover) .process__step:nth-child(1) .process__num, .process:has(.process__step:nth-child(3):hover) .process__step:nth-child(1) .process__num,
.process:has(.process__step:nth-child(3):hover) .process__step:nth-child(2) .process__num, .process:has(.process__step:nth-child(4):hover) .process__step:nth-child(1) .process__num,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(2) .process__num,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(3) .process__num {
  background: var(--theme-palette-color-4);
  border-color: var(--theme-palette-color-4);
}
.process:has(.process__step:nth-child(2):hover) .process__step:nth-child(1) .process__num .elementor-heading-title, .process:has(.process__step:nth-child(3):hover) .process__step:nth-child(1) .process__num .elementor-heading-title,
.process:has(.process__step:nth-child(3):hover) .process__step:nth-child(2) .process__num .elementor-heading-title, .process:has(.process__step:nth-child(4):hover) .process__step:nth-child(1) .process__num .elementor-heading-title,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(2) .process__num .elementor-heading-title,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(3) .process__num .elementor-heading-title {
  color: var(--theme-palette-color-5) !important;
}
.process:has(.process__step:nth-child(2):hover) .process__step:nth-child(1) .process__text, .process:has(.process__step:nth-child(3):hover) .process__step:nth-child(1) .process__text,
.process:has(.process__step:nth-child(3):hover) .process__step:nth-child(2) .process__text, .process:has(.process__step:nth-child(4):hover) .process__step:nth-child(1) .process__text,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(2) .process__text,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(3) .process__text,
.process:has(.process__step:nth-child(2):hover) .process__step:nth-child(1) .process__label,
.process:has(.process__step:nth-child(3):hover) .process__step:nth-child(1) .process__label,
.process:has(.process__step:nth-child(3):hover) .process__step:nth-child(2) .process__label,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(1) .process__label,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(2) .process__label,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(3) .process__label,
.process:has(.process__step:nth-child(2):hover) .process__step:nth-child(1) .process__title,
.process:has(.process__step:nth-child(3):hover) .process__step:nth-child(1) .process__title,
.process:has(.process__step:nth-child(3):hover) .process__step:nth-child(2) .process__title,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(1) .process__title,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(2) .process__title,
.process:has(.process__step:nth-child(4):hover) .process__step:nth-child(3) .process__title {
  opacity: 1;
}

.elementor-counter {
  margin-top: 1em;
  margin-bottom: 1em;
}
.elementor-counter .elementor-counter-title {
  line-height: normal;
  margin-top: 1em;
}

.triangle__trans,
.triangle__full {
  --tri-bottom: 10px;
  --tri-width: min(90%, clamp(240px, 28vw, 560px));
  --tri-aspect: 211 / 111;
}
.triangle__trans .elementor-image-box-img,
.triangle__trans .eael-entry-thumbnail,
.triangle__full .elementor-image-box-img,
.triangle__full .eael-entry-thumbnail {
  position: relative;
  overflow: hidden;
}
.triangle__trans .elementor-image-box-img::after,
.triangle__trans .eael-entry-thumbnail::after,
.triangle__full .elementor-image-box-img::after,
.triangle__full .eael-entry-thumbnail::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: var(--tri-bottom);
  transform: translateX(-50%);
  z-index: 2;
  pointer-events: none;
  width: var(--tri-width);
  aspect-ratio: var(--tri-aspect);
  height: auto;
  clip-path: polygon(50% 0, 0 100%, 100% 100%);
}

.triangle__trans .elementor-image-box-img::after,
.triangle__trans .eael-entry-thumbnail::after {
  background: rgba(255, 255, 255, 0.25);
}

.triangle__full .elementor-image-box-img::after,
.triangle__full .eael-entry-thumbnail::after {
  background: var(--theme-palette-color-2);
}

@media (min-width: 768px) {
  .equal-height-row {
    height: clamp(320px, 38vw, 560px);
    display: flex;
    align-items: stretch;
    gap: var(--container-gap, 0);
  }
  .equal-height-row > .e-con {
    height: 100%;
    min-width: 0;
  }
  .equal-height-row > .e-con > .elementor-element {
    height: 100%;
  }
  .equal-height-row .elementor-image-carousel-wrapper,
  .equal-height-row .elementor-image-carousel,
  .equal-height-row .elementor-image-carousel .swiper-wrapper,
  .equal-height-row .elementor-image-carousel .swiper-slide,
  .equal-height-row .elementor-image-carousel .swiper-slide-inner {
    height: 100%;
  }
  .equal-height-row .elementor-image-carousel .swiper-slide-image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
  }
  .equal-height-row .elementor-custom-embed,
  .equal-height-row .elementor-custom-embed iframe {
    width: 100%;
    height: 100%;
    display: block;
  }
}
@media (min-width: 768px) and (max-width: 767px) {
  .equal-height-row {
    height: auto;
    flex-direction: column;
  }
  .equal-height-row .elementor-image-carousel-wrapper {
    height: clamp(220px, 55vw, 360px);
  }
  .equal-height-row .elementor-custom-embed iframe {
    height: clamp(260px, 65vw, 420px);
  }
}
.wpforms-field-container {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
}
.wpforms-field-container .wpforms-field {
  flex: 1 1 100%;
  width: auto;
  margin: 0;
  padding: 0 !important;
}
.wpforms-field-container .wpforms-field.half {
  flex: 0 0 calc(50% - 9px);
}
.wpforms-field-container .wpforms-field label {
  display: block;
  margin-bottom: 0;
  text-transform: uppercase;
}
.wpforms-field-container .wpforms-field .wpforms-field-description {
  font-size: 12px;
}
.wpforms-field-container .wpforms-field .wpforms-field-label-inline a {
  text-decoration: underline;
}
.wpforms-field-container .wpforms-field ul.wpforms-field-required {
  list-style: none;
  margin: 0 0 1em;
  padding: 0;
}
.wpforms-field-container .wpforms-field ul.wpforms-field-required li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.wpforms-field-container .wpforms-field ul.wpforms-field-required li input[type=checkbox] {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin: 0.2em 0 0;
}
.wpforms-field-container .wpforms-field ul.wpforms-field-required li label.wpforms-field-label-inline {
  margin: 0;
  text-transform: none;
  font-size: 12px;
  line-height: 1.3;
}
.wpforms-field-container .wpforms-field ul.wpforms-field-required li.choice-2 label.wpforms-field-label-inline {
  line-height: unset;
}
.wpforms-field-container input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.wpforms-field-container textarea,
.wpforms-field-container select,
.wpforms-field-container .choices__inner {
  width: 100%;
  border: 1px solid var(--theme-palette-color-4) !important;
  border-radius: 0 !important;
  background: transparent;
  color: var(--theme-palette-color-4);
  height: var(--has-height, var(--theme-form-field-height, 40px));
}
.wpforms-field-container textarea {
  min-height: 140px;
  height: auto;
  resize: vertical;
}
.wpforms-field-container .choices {
  width: 100%;
}
.wpforms-field-container .choices__inner {
  min-height: 44px;
  display: flex;
  align-items: center;
  padding: 10px 12px;
}
.wpforms-field-container .choices__list--single {
  padding: 0;
}
.wpforms-field-container input[type=checkbox] {
  border: 1px solid var(--theme-palette-color-4) !important;
}
.wpforms-field-container input[type=checkbox]:checked {
  background-color: var(--theme-palette-color-4) !important;
}
@media (max-width: 767px) {
  .wpforms-field-container .wpforms-field.half {
    flex-basis: 100%;
  }
}

#cmplz-manage-consent .cmplz-manage-consent {
  font-size: 12px;
  line-height: 4px !important;
  height: 20px !important;
  right: unset !important;
  left: 20px;
  opacity: 0.75;
}

.knowledge-row a:hover {
  color: var(--theme-palette-color-4);
}

.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder {
  border: 0;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-overlay i {
  display: none;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge {
  bottom: initial;
  top: 10px;
  left: 0;
  transform: none;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media .post-cats {
  display: none;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media .post-phase {
  background: var(--theme-palette-color-6);
  padding: 4px 8px 4px 40px;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-header .eael-entry-title a {
  color: var(--theme-palette-color-4) !important;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt p {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
  margin-bottom: 1.25em;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a {
  width: -moz-fit-content;
  width: fit-content;
  padding: 12px 24px;
  background-color: var(--theme-palette-color-4);
  color: var(--theme-palette-color-5);
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a::after {
  display: none;
}
.case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a:hover, .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a:focus {
  background-color: var(--theme-palette-color-5);
  color: var(--theme-palette-color-4);
}

@media (max-width: 767px) {
  .eael-post-grid-container .eael-grid-post {
    margin-bottom: 60px;
  }
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder-inner .eael-entry-wrapper {
  padding: 2em 1em 1em;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder {
  border: 0;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-overlay {
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 5;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-overlay i {
  display: none;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail {
  position: relative;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge {
  position: absolute;
  left: 50%;
  bottom: 1.5em;
  transform: translateX(-50%);
  z-index: 3;
  text-align: center;
  pointer-events: none;
  -webkit-hyphens: auto;
          hyphens: auto;
  line-height: calc(var(--theme-text-button-font-size) * 1.25);
  font-weight: var(--theme-button-font-weight);
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media {
  display: inline-block;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media .post-cats {
  display: none;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper {
  padding: 1em 0 0;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-header .eael-entry-title {
  color: var(--theme-palette-color-4) !important;
  padding-bottom: 0.5em;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-header .eael-entry-title a {
  color: var(--theme-palette-color-4) !important;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt p {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
  margin-bottom: 0.5em;
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a {
  font-family: var(--theme-font-family);
  font-size: var(--theme-text-button-font-size);
  color: var(--theme-palette-color-4);
  font-weight: var(--theme-button-font-weight);
  text-transform: var(--theme-button-text-transform);
  letter-spacing: var(--theme-button-letter-spacing);
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.5em;
  margin-bottom: -0.1em;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='current color' d='M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z'/%3E%3C/svg%3E");
}
.eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a:hover {
  color: var(--theme-palette-color-4);
}

@media (min-width: 768px) {
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder {
    border: 0;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner {
    position: relative;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media {
    position: relative;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-overlay {
    background: linear-gradient(to right, var(--theme-palette-color-1), transparent);
    opacity: 1;
    visibility: inherit;
    z-index: 2;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-overlay i {
    display: none;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail {
    position: relative;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge {
    position: absolute;
    top: 1em;
    left: 0;
    z-index: 3;
    transform: none;
    background: none;
    padding-left: initial;
    text-transform: uppercase;
    font-size: calc(var(--theme-font-size) * 0.8);
    font-weight: var(--theme-font-weight);
    letter-spacing: 0.05em;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media .post-cats {
    display: none;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media .post-phase {
    background: var(--theme-palette-color-6);
    padding: 4px 8px 4px 40px;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper {
    content: "";
    position: absolute;
    width: 100%;
    inset: 0;
    z-index: 3;
    padding: 4em 2em 2em;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper {
    width: 60%;
  }
}
@media (min-width: 768px) and (min-width: 1300px) {
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper {
    width: 40%;
  }
}
@media (min-width: 768px) {
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-header .eael-entry-title {
    font-size: var(--theme-font-size-h2);
    color: var(--theme-palette-color-4) !important;
    padding-bottom: 0.5em;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-header .eael-entry-title {
    padding-bottom: 0;
    font-size: var(--theme-font-size-h3);
  }
}
@media (min-width: 768px) {
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-header .eael-entry-title a {
    color: var(--theme-palette-color-4) !important;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content {
    font-family: var(--theme-font-family);
    font-size: var(--theme-font-size);
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt {
    font-family: var(--theme-font-family);
    font-size: var(--theme-font-size);
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt p {
    font-family: var(--theme-font-family);
    font-size: var(--theme-font-size);
    margin-bottom: 1.25em;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a {
    width: -moz-fit-content;
    width: fit-content;
    padding: 12px 24px;
    background-color: var(--theme-palette-color-5);
    color: var(--theme-palette-color-4);
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a::after {
    display: none;
  }
  .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a:hover, .case-study .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a:focus {
    background-color: var(--theme-palette-color-4);
    color: var(--theme-palette-color-5);
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder {
    border: 0;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-overlay {
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 5;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-overlay i {
    display: none;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail {
    position: relative;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge {
    position: absolute;
    left: 50%;
    bottom: 2em;
    transform: translateX(-50%);
    z-index: 3;
    text-align: center;
    pointer-events: none;
    -webkit-hyphens: auto;
            hyphens: auto;
    font-weight: var(--theme-button-font-weight);
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media {
    display: inline-block;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-grid-post-holder-inner .eael-entry-media .eael-entry-thumbnail .eael-media-badge .eael-meta-to-media .post-cats {
    display: none;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper {
    padding: 1em 0 0;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-header .eael-entry-title {
    color: var(--theme-palette-color-4) !important;
    padding-bottom: 0.5em;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-header .eael-entry-title a {
    color: var(--theme-palette-color-4) !important;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content {
    font-family: var(--theme-font-family);
    font-size: var(--theme-font-size);
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt {
    font-family: var(--theme-font-family);
    font-size: var(--theme-font-size);
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt p {
    font-family: var(--theme-font-family);
    font-size: var(--theme-font-size);
    margin-bottom: 0.5em;
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a {
    font-family: var(--theme-font-family);
    font-size: var(--theme-text-button-font-size);
    color: var(--theme-palette-color-4);
    font-weight: var(--theme-button-font-weight);
    text-transform: var(--theme-button-text-transform);
    letter-spacing: var(--theme-button-letter-spacing);
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 0.5em;
    margin-bottom: -0.1em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='current color' d='M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z'/%3E%3C/svg%3E");
  }
  .eael-post-grid-container .eael-grid-post .eael-grid-post-holder .eael-entry-wrapper .eael-entry-content .eael-grid-post-excerpt a:hover {
    color: var(--theme-palette-color-4);
  }
}
.eael-filter-gallery-wrapper .eael-filter-gallery-control {
  display: none;
}

.eael-filterable-gallery-item-wrap .eael-gallery-grid-item .gallery-item-caption-wrap .gallery-item-caption-over .fg-item-title {
  display: none;
}

.elementor-element.partner .swiper {
  position: relative;
  padding-bottom: 4em;
}
.elementor-element.partner .swiper .elementor-swiper-button {
  top: auto;
  bottom: 0.5em;
  z-index: 3;
  transform: translateY(50%);
}
.elementor-element.partner .swiper .elementor-swiper-button-prev {
  position: absolute;
  left: auto;
  right: calc(50% + 150px);
}
.elementor-element.partner .swiper .elementor-swiper-button-prev::after, .elementor-element.partner .swiper .elementor-swiper-button-prev::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  height: 30px;
  width: 100px;
}
.elementor-element.partner .swiper .elementor-swiper-button-prev::after {
  height: 2px;
  background-color: var(--theme-palette-color-4);
}
.elementor-element.partner .swiper .elementor-swiper-button-next {
  position: absolute;
  left: calc(50% + 150px);
  right: auto;
}
.elementor-element.partner .swiper .elementor-swiper-button-next::after, .elementor-element.partner .swiper .elementor-swiper-button-next::before {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  height: 30px;
  width: 100px;
}
.elementor-element.partner .swiper .elementor-swiper-button-next::after {
  height: 2px;
  background-color: var(--theme-palette-color-4);
}
.elementor-element.partner .swiper .elementor-swiper-button svg {
  fill: var(--theme-palette-color-4);
}
.elementor-element.partner .swiper .swiper-pagination {
  position: absolute;
  top: auto;
  right: auto;
  left: 50%;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(180, 180, 180, 0.65);
  z-index: 5;
  width: auto !important;
}
.elementor-element.partner .swiper .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  margin: 0 !important;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.35);
  opacity: 1;
  transition: background 0.2s ease, transform 0.2s ease;
}
.elementor-element.partner .swiper .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--theme-palette-color-4);
  transform: scale(1.05);
}
.elementor-element.partner .swiper .swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 0;
}

.elementor-element .swiper {
  position: relative;
}
.elementor-element .swiper .elementor-swiper-button {
  top: auto;
  bottom: 2em;
  transform: translateY(50%);
}
.elementor-element .swiper .elementor-swiper-button-prev {
  position: absolute;
  left: auto;
  right: calc(50% + 150px);
}
.elementor-element .swiper .elementor-swiper-button-prev::after, .elementor-element .swiper .elementor-swiper-button-prev::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  height: 30px;
  width: 100px;
}
.elementor-element .swiper .elementor-swiper-button-prev::after {
  height: 2px;
  background-color: var(--theme-palette-color-4);
}
.elementor-element .swiper .elementor-swiper-button-next {
  position: absolute;
  left: calc(50% + 150px);
  right: auto;
}
.elementor-element .swiper .elementor-swiper-button-next::after, .elementor-element .swiper .elementor-swiper-button-next::before {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  height: 30px;
  width: 100px;
}
.elementor-element .swiper .elementor-swiper-button-next::after {
  height: 2px;
  background-color: var(--theme-palette-color-4);
}
.elementor-element .swiper .elementor-swiper-button svg {
  fill: var(--theme-palette-color-4);
}
.elementor-element .swiper .swiper-pagination {
  position: absolute;
  top: auto;
  right: auto;
  left: 50%;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(180, 180, 180, 0.65);
  z-index: 5;
  width: auto !important;
}
.elementor-element .swiper .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  margin: 0 !important;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.35);
  opacity: 1;
  transition: background 0.2s ease, transform 0.2s ease;
}
.elementor-element .swiper .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--theme-palette-color-4);
  transform: scale(1.05);
}
.elementor-element .swiper .swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 2em;
}

/* FOOTER WIDGETS */
.ct-widget.is-layout-flow.widget_nav_menu {
  margin-top: 0;
}
.ct-widget.is-layout-flow.widget_nav_menu .menu-footer-rechtliches-container {
  margin-block-end: 0;
}
.ct-widget.is-layout-flow.widget_nav_menu .menu-footer-rechtliches-container .widget-menu {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}
.ct-widget.is-layout-flow.widget_nav_menu .menu-footer-rechtliches-container .widget-menu > li {
  display: flex;
  align-items: center;
}
.ct-widget.is-layout-flow.widget_nav_menu .menu-footer-rechtliches-container .widget-menu > li:not(:last-child)::after {
  content: "•";
  margin: 0 10px;
}
.ct-widget.is-layout-flow.widget_text .textwidget {
  margin-block-end: 0;
}
.ct-widget.is-layout-flow.widget_media_image img {
  width: 165px;
}

.cmplz-blocked-content-container {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  overflow: hidden;
}

.cmplz-blocked-content-container .cmplz-blocked-content-notice,
.cmplz-wp-video .cmplz-blocked-content-notice {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  width: calc(100% - 32px) !important;
  max-width: 80% !important;
  white-space: normal !important;
  text-transform: none !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  padding: 14px 16px !important;
  background-color: rgba(0, 0, 0, 0.55) !important;
  color: #fff !important;
  text-align: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  cursor: pointer;
  z-index: 98 !important;
}

.elementor-widget-google_maps .cmplz-placeholder-parent {
  min-height: 550px !important;
}
.elementor-widget-google_maps .cmplz-placeholder-parent.cmplz-blocked-content-container,
.elementor-widget-google_maps .cmplz-placeholder-parent [class*=cmplz-placeholder-].cmplz-blocked-content-container {
  height: 550px !important;
  min-height: 550px !important;
  max-height: 550px !important;
  position: relative !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.elementor-widget-google_maps .cmplz-placeholder-parent .cmplz-blocked-content-notice {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  width: calc(100% - 32px) !important;
  max-width: 760px !important;
}
