/* Contact form: kill browser defaults + even field rhythm */
.ag-contact-card {
  align-items: stretch;
}

.ag-contact-info-col,
.ag-contact-form-col {
  box-sizing: border-box;
}

.ag-contact-form-col {
  min-width: 0;
}

/* Inactive success branch must not reserve space above the form */
.ag-contact-form-col > sc-if:not(:has(form)):not(:has(button[type="submit"])) {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* Keep the form branch as a normal block so DC conditionals stay reliable */
.ag-contact-form-col > sc-if:has(form) {
  display: block;
  margin: 0;
  padding: 0;
  min-width: 0;
}

form[sc-camel-on-submit] {
  display: flex !important;
  flex-direction: column !important;
  gap: 26px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  min-width: 0;
  width: 100%;
}

form[sc-camel-on-submit] label {
  display: block !important;
  margin: 0 !important;
  line-height: 1.25 !important;
}

form[sc-camel-on-submit] input[type="text"],
form[sc-camel-on-submit] input:not([type]),
form[sc-camel-on-submit] input[type="email"],
form[sc-camel-on-submit] input[type="tel"],
form[sc-camel-on-submit] textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100%;
  box-sizing: border-box !important;
  margin: 0 !important;
}

form[sc-camel-on-submit] textarea {
  min-height: 132px;
  field-sizing: content;
}

/* Label → control */
form[sc-camel-on-submit] > div[style*="flex-direction:column"],
form[sc-camel-on-submit] div[style*="grid-template-columns"] > div[style*="flex-direction:column"] {
  gap: 14px !important;
}

/* Einheiten/Anlass sc-if: no extra anonymous flex gap */
form[sc-camel-on-submit] > sc-if {
  display: contents;
}

form[sc-camel-on-submit] > sc-if[hidden],
form[sc-camel-on-submit] > sc-if[aria-hidden="true"],
form[sc-camel-on-submit] > sc-if[style*="display: none"],
form[sc-camel-on-submit] > sc-if[style*="display:none"] {
  display: none !important;
}

/* Checkbox + CTA block: even, compact */
form[sc-camel-on-submit] > div[style*="flex-direction:column"][style*="gap:18px"],
form[sc-camel-on-submit] > div[style*="flex-direction:column"][style*="gap:16px"] {
  gap: 18px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
}

form[sc-camel-on-submit] > div[style*="flex-direction:column"][style*="gap:18px"] > sc-if,
form[sc-camel-on-submit] > div[style*="flex-direction:column"][style*="gap:16px"] > sc-if {
  display: contents;
}

form[sc-camel-on-submit] button[type="submit"] {
  margin: 0 !important;
}

form[sc-camel-on-submit] input[type="checkbox"] {
  margin: 2px 0 0 !important;
}
