/* Isolated from archived WPForms styles. No external assets or UI dependency. */
form.contact-form[data-contact-form] {
  --contact-accent: #1d6875;
  --contact-tint: #f2f7f7;
  --contact-ink: #202b30;
  --contact-muted: #59676d;
  box-sizing: border-box;
  container-type: inline-size;
  width: 100%;
  margin: 0;
  color: var(--contact-ink);
  font: 400 16px/1.55 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-align: left;
}
form.contact-form[data-contact-theme="die-aufbrezlerei"] { --contact-accent: #3a3922; --contact-tint: #faf8e8; }
form.contact-form[data-contact-theme="mukke"] { --contact-accent: #242929; --contact-tint: #fff6ef; --contact-muted: #303634; }
form.contact-form[data-contact-theme="kolleritsch"] { --contact-accent: #476453; --contact-tint: #f2f6f2; }
form.contact-form * { box-sizing: border-box; }
form.contact-form .contact-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px 20px; }
form.contact-form .contact-field { min-width: 0; margin: 0; padding: 0; }
form.contact-form .contact-field label { display: block; margin: 0 0 8px; padding: 0; color: var(--contact-ink); line-height: 1.5; font-family: inherit; font-size: 14px; font-weight: 600; letter-spacing: 0; }
form.contact-form .contact-required { color: var(--contact-accent); }
form.contact-form .contact-optional { margin-left: 5px; color: var(--contact-muted); font-size: 12px; font-weight: 400; }
form.contact-form .contact-input {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  height: 50px !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  border: 1px solid #c9d0cf !important;
  border-radius: 7px !important;
  background-color: #fff !important;
  color: var(--contact-ink) !important;
  box-shadow: none !important;
  font: 400 16px/1.5 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  transition: border-color .15s ease, box-shadow .15s ease;
}
form.contact-form select.contact-input { padding-right: 34px !important; cursor: pointer; }
form.contact-form textarea.contact-input { height: auto !important; min-height: 144px; resize: vertical; }
form.contact-form .contact-input::placeholder { color: #727c80; opacity: 1; }
form.contact-form .contact-input:hover { border-color: #82928b !important; }
form.contact-form .contact-input:focus { border-color: var(--contact-accent) !important; outline: 2px solid var(--contact-accent); outline-offset: 2px; }
form.contact-form .contact-input:user-invalid { border-color: #ae4438 !important; }
form.contact-form .contact-help, form.contact-form .contact-direct { margin: 18px 0 0; font: inherit; font-size: 13px; line-height: 1.7; color: var(--contact-muted); }
form.contact-form .contact-help { margin-bottom: 22px; }
form.contact-form a { color: var(--contact-accent); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
form.contact-form a:focus-visible { outline: 2px solid var(--contact-accent); outline-offset: 3px; }
form.contact-form .contact-submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  width: auto;
  margin: 0 !important;
  padding: 13px 26px !important;
  border: 1px solid var(--contact-accent) !important;
  border-radius: 7px !important;
  background: var(--contact-accent) !important;
  color: #fff !important;
  box-shadow: none !important;
  font: 600 15px/1.5 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  cursor: pointer;
  transition: filter .15s ease;
}
form.contact-form .contact-submit:hover { filter: brightness(.88); }
form.contact-form .contact-submit:focus-visible { outline: 2px solid var(--contact-accent); outline-offset: 4px; }
form.contact-form .contact-submit:disabled { opacity: .6; cursor: wait; }
form.contact-form .contact-direct { padding-top: 18px; border-top: 1px solid #e4e8e6; }
form.contact-form [data-contact-status] { margin: 16px 0 0; padding: 14px 16px; border: 1px solid #b6cfbc; border-radius: 7px; background: #f1f8f3; color: #254d32; font: inherit; font-size: 14px; line-height: 1.6; }
form.contact-form [data-contact-status][data-state="error"] { border-color: #e3b6af; background: #fff5f2; color: #853528; }
form.contact-form [data-contact-status]:empty, form.contact-form .contact-honeypot { display: none !important; }
form.contact-form .preview-contact-note { margin: 0 0 24px; padding: 12px 14px; border: 0; border-left: 2px solid var(--contact-accent); border-radius: 0 5px 5px 0; background: var(--contact-tint); color: var(--contact-muted); font: inherit; font-size: 12px; line-height: 1.65; }
@container (min-width: 460px) {
  form.contact-form .contact-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  form.contact-form .contact-field-wide { grid-column: 1 / -1; }
}
@container (max-width: 459px) {
  form.contact-form .contact-submit { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  form.contact-form .contact-input, form.contact-form .contact-submit { transition: none; }
}
