.nh-form-embed {
  font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  max-width: 36rem;
  --nh-text: #1a1a1a;
  --nh-muted: #4b5563;
  --nh-required: #b45309;
  --nh-input-text: #1a1a1a;
  --nh-input-bg: #ffffff;
  --nh-input-border: #d1d5db;
  --nh-button-bg: #b45309;
  --nh-button-text: #ffffff;
  --nh-error: #991b1b;
  --nh-error-bg: #fef2f2;
  --nh-error-border: #fecaca;
  --nh-success: #065f46;
  --nh-success-bg: #ecfdf5;
  --nh-success-border: #a7f3d0;
  color: var(--nh-text);
}

.nh-form-embed.nh-form-embed--inherit {
  color: inherit;
}

.nh-form-embed.nh-form-embed--inherit .nh-form-desc,
.nh-form-embed.nh-form-embed--inherit .nh-form-title {
  color: inherit;
}

.nh-form-embed.nh-form-embed--inherit label,
.nh-form-embed.nh-form-embed--inherit .nh-field-label {
  color: inherit;
}

.nh-form-embed.nh-form-embed--inherit .nh-form-desc {
  opacity: 0.85;
}

.nh-form-embed.nh-form-embed--inherit input[type="text"],
.nh-form-embed.nh-form-embed--inherit input[type="email"],
.nh-form-embed.nh-form-embed--inherit input[type="tel"],
.nh-form-embed.nh-form-embed--inherit input[type="number"],
.nh-form-embed.nh-form-embed--inherit select,
.nh-form-embed.nh-form-embed--inherit textarea {
  color: inherit;
  background: transparent;
  border-color: color-mix(in srgb, currentColor 35%, transparent);
}

.nh-form-embed.nh-form-embed--inherit .nh-submit {
  color: var(--nh-button-text, #fff);
  background: var(--nh-button-bg, #b45309);
}

.nh-form-embed .nh-form-title {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0 0 0.5rem;
  color: var(--nh-text);
}

.nh-form-embed .nh-form-desc {
  margin: 0 0 1rem;
  color: var(--nh-muted);
  font-size: 0.9375rem;
}

.nh-form-embed .nh-field {
  margin-bottom: 1rem;
}

.nh-form-embed label {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 0.35rem;
  color: var(--nh-text);
}

.nh-form-embed .nh-required {
  color: var(--nh-required);
}

.nh-form-embed input[type="text"],
.nh-form-embed input[type="email"],
.nh-form-embed input[type="tel"],
.nh-form-embed input[type="number"],
.nh-form-embed select,
.nh-form-embed textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 0.55rem 0.65rem;
  border: 1px solid var(--nh-input-border);
  border-radius: 0.375rem;
  font-size: 1rem;
  color: var(--nh-input-text);
  background: var(--nh-input-bg);
}

.nh-form-embed textarea {
  min-height: 6rem;
  resize: vertical;
}

.nh-form-embed .nh-hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.nh-form-embed .nh-submit {
  margin-top: 0.5rem;
  padding: 0.6rem 1.25rem;
  font-size: 1rem;
  font-weight: 600;
  color: var(--nh-button-text);
  background: var(--nh-button-bg);
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
}

.nh-form-embed .nh-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.nh-form-embed .nh-message {
  margin-top: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 0.375rem;
  font-size: 0.9375rem;
}

.nh-form-embed .nh-message--success {
  background: var(--nh-success-bg);
  color: var(--nh-success);
  border: 1px solid var(--nh-success-border);
}

.nh-form-embed .nh-message--error {
  background: var(--nh-error-bg);
  color: var(--nh-error);
  border: 1px solid var(--nh-error-border);
}

.nh-form-embed .nh-errors {
  margin: 0 0 1rem;
  padding: 0.75rem 1rem;
  background: var(--nh-error-bg);
  border: 1px solid var(--nh-error-border);
  border-radius: 0.375rem;
  font-size: 0.875rem;
  color: var(--nh-error);
}

.nh-form-embed .nh-field-error {
  margin: 0.25rem 0 0;
  font-size: 0.8125rem;
  color: var(--nh-error);
}
