picture { display: contents; }

.about-contact_map-wrapper > picture,
.home-about_image-wrapper > picture,
.team_image-wrapper > picture,
.leistungen_image-wrapper > picture {
  display: block;
  width: 100%;
  height: 100%;
}

body.has-dark-hero .navbar_component {
  background-color: transparent !important;
  transition: background-color 0.3s ease;
}
body.has-dark-hero.has-scrolled .navbar_component {
  background-color: #fff !important;
}

body.has-dark-hero:not(.has-scrolled) .menu-icon_line-top,
body.has-dark-hero:not(.has-scrolled) .menu-icon_line-middle,
body.has-dark-hero:not(.has-scrolled) .menu-icon_line-bottom {
  background-color: #fff !important;
  transition: background-color 0.3s ease;
}

body.has-dark-hero .navbar_menu-button.w--open .menu-icon_line-top,
body.has-dark-hero .navbar_menu-button.w--open .menu-icon_line-middle,
body.has-dark-hero .navbar_menu-button.w--open .menu-icon_line-bottom {
  background-color: var(--base-color-brand--secondary) !important;
}

@media (max-width: 991px) {
  .w-nav-overlay .navbar_dropdown-link,
  .w-nav-overlay .navbar_dropdown-toggle,
  .w-nav-overlay .navbar_dropdown-toggle > div,
  .w-nav-overlay .navbar_dropdown-link > div,
  .w-nav-overlay .w-nav-link {
    color: var(--base-color-brand--secondary) !important;
  }
  .w-nav-overlay .navbar_dropdown-link:hover,
  .w-nav-overlay .navbar_dropdown-link:hover > div {
    color: var(--base-color-brand--secondary-light) !important;
  }
}

.form_file-input {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.form_file-input input[type="file"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.form_file-button {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  margin: 0;
}

.form_file-name {
  color: var(--base-color-brand--secondary, #4a5568);
  font-size: 0.875rem;
  font-style: italic;
  word-break: break-all;
}

.form_file-name.is-error {
  color: #c0392b;
  font-style: normal;
  font-weight: 500;
}

.form_file-input input[type="file"]:focus-visible + .form_file-button {
  outline: 0.125rem solid #4d65ff;
  outline-offset: 0.125rem;
}

.faq_accordion .faq_answer {
  max-height: 0;
  padding-top: 0;
  padding-bottom: 0;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1),
              padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq_accordion.is-open .faq_answer {
  max-height: 1500px;
  padding-bottom: 1.25rem;
}
.faq_accordion .faq4_icon-wrappper {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq_accordion.is-open .faq4_icon-wrappper {
  transform: rotate(45deg);
}
.faq_question { user-select: none; }
