.mpw-form-consent {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin: 1rem 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: inherit;
}

.mpw-form-consent--newsletter {
  color: #fff;
}

.mpw-form-consent--collapsed[hidden] {
  display: none !important;
}

.mpw-form-consent input[type="checkbox"] {
  margin-top: 0.2rem;
  flex: 0 0 auto;
}

.mpw-form-consent a {
  color: inherit;
  text-decoration: underline;
}

.mpw-form-required {
  color: var(--mpw-yellow, #f1c95a);
}

.mpw-newsletter-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.mpw-newsletter-form #mc_embed_signup_scroll {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.mpw-newsletter-form .mpw-newsletter-field {
  margin: 0 !important;
  width: 100%;
}

.mpw-newsletter-form .mpw-newsletter-field input {
  width: 100%;
  box-sizing: border-box;
}

.mpw-newsletter-form .clear {
  margin: 0;
}

.mpw-newsletter-form .mpw-form-consent--newsletter:not([hidden]) {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.35;
  opacity: 0.9;
}

#mce-success-response,
#mce-error-response {
  margin-top: 0.75rem;
  font-size: 0.9rem;
  line-height: 1.45;
}

#mce-success-response {
  color: #d7ffd9;
}

#mce-error-response {
  color: #ffb4b4;
}

.contact-form-block,
.contact-form-block .main-contact-detail,
.contact-form-block .w-form,
.contact-form-block .mpw-form-status {
  opacity: 1 !important;
  visibility: visible !important;
}

.mpw-form-status {
  display: none;
  margin: 0 0 1.25rem;
  padding: 1.25rem 1.5rem;
  border-radius: 4px;
  font-size: 1rem;
  line-height: 1.5;
}

.mpw-form-status--success {
  display: block;
  color: #1f6b2d;
  background-color: #dff5e4;
  border: 1px solid #a8dbb3;
}

.mpw-form-status--error {
  display: block;
  color: #8b1c1c;
  background-color: #ffe8e8;
  border: 1px solid #f0b4b4;
}

.contact-form-block .w-form-fail,
.contact-form-block .w-form-done {
  display: none;
  margin-top: 1rem;
  padding: 1.25rem 1.5rem;
  border-radius: 4px;
  font-size: 1rem;
  line-height: 1.5;
}

.contact-form-block .w-form-done {
  color: #1f6b2d;
  background-color: #dff5e4;
  border: 1px solid #a8dbb3;
}

.contact-form-block .w-form-fail {
  color: #8b1c1c;
  background-color: #ffe8e8;
  border: 1px solid #f0b4b4;
}

.contact-form-block .w-form form,
.contact-form-block .w-form .conatact-form,
.contact-form-block .w-form .contact-form {
  display: grid !important;
}

/* Webflow animates inputs with transition:all — toggling :placeholder-shown can reset the caret. */
.contact-form-block input.w-input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
.contact-form-block textarea.w-input,
.contact-form-block textarea.text-area {
  transition: none !important;
}

/* Contact + partner: Webflow sets white text on .input-field — keep readable */
.contact-form-block .input-field.contact-input-field,
.contact-form-block .text-area.contact-input-field,
.contact-form-block .input-field-firma,
.contact-form-block .input-field-stra-e,
.contact-form-block .input-field-stra-ennummer,
.contact-form-block .input-field-land,
.contact-form-block .input-field-email,
.contact-form-block .input-field-website {
  color: #111 !important;
  -webkit-text-fill-color: #111 !important;
  background-color: #fff !important;
  caret-color: #111 !important;
}

.contact-form-block .input-field-firma:focus,
.contact-form-block .input-field-stra-e:focus,
.contact-form-block .input-field-stra-ennummer:focus,
.contact-form-block .input-field-land:focus,
.contact-form-block .input-field-email:focus,
.contact-form-block .input-field-website:focus,
.contact-form-block .input-field.contact-input-field:focus,
.contact-form-block .text-area.contact-input-field:focus,
.contact-form-block .input-field-firma:not(:placeholder-shown),
.contact-form-block .input-field-stra-e:not(:placeholder-shown),
.contact-form-block .input-field-stra-ennummer:not(:placeholder-shown),
.contact-form-block .input-field-land:not(:placeholder-shown),
.contact-form-block .input-field-email:not(:placeholder-shown),
.contact-form-block .input-field-website:not(:placeholder-shown),
.contact-form-block .input-field.contact-input-field:not(:placeholder-shown),
.contact-form-block .text-area.contact-input-field:not(:placeholder-shown) {
  color: #111 !important;
  -webkit-text-fill-color: #111 !important;
}

.contact-form-block .input-field-firma::placeholder,
.contact-form-block .input-field-stra-e::placeholder,
.contact-form-block .input-field-stra-ennummer::placeholder,
.contact-form-block .input-field-land::placeholder,
.contact-form-block .input-field-email::placeholder,
.contact-form-block .input-field-website::placeholder,
.contact-form-block .input-field.contact-input-field::placeholder,
.contact-form-block .text-area.contact-input-field::placeholder {
  color: #666 !important;
  -webkit-text-fill-color: #666 !important;
  opacity: 1;
}

.contact-form-block .input-field-firma:-webkit-autofill,
.contact-form-block .input-field-stra-e:-webkit-autofill,
.contact-form-block .input-field-stra-ennummer:-webkit-autofill,
.contact-form-block .input-field-land:-webkit-autofill,
.contact-form-block .input-field-email:-webkit-autofill,
.contact-form-block .input-field-website:-webkit-autofill,
.contact-form-block .input-field.contact-input-field:-webkit-autofill,
.contact-form-block .text-area.contact-input-field:-webkit-autofill {
  -webkit-text-fill-color: #111 !important;
  box-shadow: 0 0 0 1000px #fff inset !important;
}
