-
+
diff --git a/src/components/business-inquiry-form.tsx b/src/components/business-inquiry-form.tsx
index d3f994a..f4e827c 100644
--- a/src/components/business-inquiry-form.tsx
+++ b/src/components/business-inquiry-form.tsx
@@ -7,9 +7,24 @@ import { useI18n } from "@/i18n/i18n-provider";
type Status = "idle" | "loading" | "success" | "error";
-const TURNSTILE_SITE_KEY = process.env.NEXT_PUBLIC_TURNSTILE_SITE_KEY;
-
-export function BusinessInquiryForm() {
+/**
+ * Der Turnstile-Sitekey kommt als Prop vom Server und NICHT aus
+ * process.env in dieser Datei.
+ *
+ * Grund: NEXT_PUBLIC_-Variablen werden in Client Components zur BUILD-Zeit
+ * ins Bundle eingebacken. Der Wert wird hier aber erst zur Laufzeit gesetzt
+ * (k8s/01-configmap.yaml). Ein Zugriff auf process.env an dieser Stelle
+ * ergibt deshalb dauerhaft undefined — das Widget erschiene nie, waehrend die
+ * Serverseite bei gesetztem TURNSTILE_SECRET_KEY sehr wohl einen Token
+ * verlangt. Das Formular waere damit unabsendbar, ohne dass irgendwo ein
+ * Fehler auftaucht.
+ *
+ * Alle uebrigen Formulare (Login, Registrierung, Passwort-Reset, Zwei-Faktor,
+ * Checkout, Verfuegbarkeits-Benachrichtigung) lesen den Wert bereits im
+ * Server Component und reichen ihn als Prop weiter. Diese Datei folgt jetzt
+ * demselben Muster.
+ */
+export function BusinessInquiryForm({ turnstileSiteKey }: { turnstileSiteKey?: string }) {
const { t } = useI18n();
const [status, setStatus] = useState("idle");
const [errorMessage, setErrorMessage] = useState(null);
@@ -96,8 +111,8 @@ export function BusinessInquiryForm() {
{errorMessage ?