.enterprise-contact-form {
  --ec-input: #1c2330;
  --ec-ink: #f5f7fa;
  --ec-muted: #b9c1cf;
  --ec-border: #414c5d;
  --ec-blue: #0066ff;
  --ec-error: #ffb2ae;
  --ec-body: "DIN 2014", "din-2014", sans-serif;
  color-scheme: dark;
  min-width: 0;
  max-width: none;
  margin: 0;
  text-align: left;
  color: var(--ec-ink);
  font-family: var(--ec-body);
}
.enterprise-contact-form *, .enterprise-contact-form *::before, .enterprise-contact-form *::after { box-sizing: border-box; }
.enterprise-contact-form fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.enterprise-contact-form .ec-field { margin: 0 0 18px; }
.enterprise-contact-form .ec-field label { display: block; color: var(--ec-ink); font-size: 14px; line-height: 1.4; margin-bottom: 7px; }
.enterprise-contact-form .ec-field input, .enterprise-contact-form .ec-field select { display: block; width: 100%; min-width: 0; height: 52px; padding: 12px 15px; margin: 0; background: var(--ec-input); color: var(--ec-ink); border: 1px solid var(--ec-border); border-radius: 6px; font: 16px/1.4 var(--ec-body); box-shadow: none; }
.enterprise-contact-form input::placeholder { color: var(--ec-muted); opacity: 1; }
.enterprise-contact-form .ec-field select { appearance: auto; padding-right: 12px; }
.enterprise-contact-form select:invalid { color: var(--ec-muted); }
.enterprise-contact-form select option { background: var(--ec-input); color: var(--ec-ink); }
.enterprise-contact-form .ec-field input:focus, .enterprise-contact-form .ec-field select:focus { outline: 2px solid var(--ec-blue); outline-offset: 2px; }
.enterprise-contact-form .ec-field [aria-invalid="true"] { border-color: var(--ec-error); }
.enterprise-contact-form input:-webkit-autofill { -webkit-text-fill-color: var(--ec-ink); box-shadow: 0 0 0 1000px var(--ec-input) inset; caret-color: var(--ec-ink); }
.enterprise-contact-form .ec-privacy { color: var(--ec-muted); font: 12px/1.55 var(--ec-body); margin: 22px 0 18px; }
.enterprise-contact-form .ec-privacy a { color: var(--ec-ink); text-decoration: underline; text-underline-offset: 3px; }
.enterprise-contact-form .ec-submit { width: 100%; min-height: 50px; border: 1px solid var(--ec-blue); border-radius: 6px; background: var(--ec-blue); color: var(--ec-ink); font: 600 16px/1.4 var(--ec-body); cursor: pointer; padding: 12px 20px; }
.enterprise-contact-form .ec-submit:hover:not(:disabled) { filter: brightness(1.1); }
.enterprise-contact-form .ec-submit:focus-visible { outline: 2px solid var(--ec-ink); outline-offset: 3px; }
.enterprise-contact-form .ec-submit:disabled { cursor: not-allowed; background: var(--ec-input); border-color: var(--ec-border); }
.enterprise-contact-form[aria-busy="true"] .ec-submit { cursor: wait; }
.enterprise-contact-form .ec-error { color: var(--ec-error); font-size: 14px; line-height: 1.5; margin: 18px 0 0; }
.enterprise-contact-form .ec-success { border-top: 1px solid var(--ec-border); padding-top: 24px; }
.enterprise-contact-form .ec-success h3 { font: 600 26px/1.2 var(--ec-body); margin: 0 0 12px; color: var(--ec-ink); text-transform: none; }
.enterprise-contact-form .ec-success p { color: var(--ec-muted); font-size: 16px; line-height: 1.5; margin: 0; }
.enterprise-contact-form .ec-sr-only, .enterprise-contact-form .ec-honeypot { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.enterprise-contact-form [hidden] { display: none !important; }

/* Keep the form clear of the fixed header and any following content section. */
#contact:has(.enterprise-contact-form) { scroll-margin-top: 110px; }
#contact:has(.enterprise-contact-form):has(+ section) { margin-bottom: 32px !important; }
@media (max-width: 736px) {
  #contact:has(.enterprise-contact-form) { scroll-margin-top: 240px; }
}
