.nflow-form,
.nflow-form * {
  box-sizing: border-box;
}

.nflow-form {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: visible;
}

.nflow-form .nflow-field,
.nflow-form .nflow-field label,
.nflow-form .nflow-consent,
.nflow-form .nflow-turnstile {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.nflow-form .nflow-field input:not([type="checkbox"]):not([type="radio"]),
.nflow-form .nflow-field textarea,
.nflow-form .nflow-field select {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.nflow-form textarea {
  resize: vertical;
}

.nflow-form .nflow-consent label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 7px;
  width: 100%;
}

.nflow-form input[type="checkbox"],
.nflow-form input[type="radio"] {
  width: auto !important;
  max-width: none !important;
  margin: .2em 0 0 !important;
}

.nflow-form button,
.nflow-form input[type="submit"] {
  max-width: 100%;
}

.nflow-form .nflow-turnstile {
  margin: 16px 0;
  overflow: visible;
}

.nflow-form .nflow-turnstile iframe {
  max-width: 100%;
}

@media (max-width: 360px) {
  .nflow-form {
    font-size: 16px;
  }
}
