{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/Ihf3bBaX7kGqD2m6eRbv/6jUVhSlsys66nz5clCsN/MASTERFORM_2.js"],
  "sourcesContent": ["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useEffect,useRef,useMemo}from\"react\";import{addPropertyControls,ControlType}from\"framer\";// Added for Framer property controls\n// Move questionTitles outside the component\nconst questionTitles={roofType:\"Dachtyp w\\xe4hlen\",flachdachService:\"Flachdach Leistung w\\xe4hlen\",flachdachFenster:\"Dachfenster oder Lichtkuppeln hinzuf\\xfcgen\",flachdachFensterAnzahl:\"Fensteranzahl w\\xe4hlen\",flachdachFensterGroesse:\"Fenstergr\\xf6\\xdfe w\\xe4hlen\",flachdachBegrunung:\"Dachbegr\\xfcnung hinzuf\\xfcgen\",flachdachBegrunungFlaeche:\"Begr\\xfcnungsfl\\xe4che angeben\",flachdachDaemmungTyp:\"D\\xe4mmqualit\\xe4t w\\xe4hlen\",flachdachFensterTyp:\"Fenster Typ w\\xe4hlen\",flachdachReparaturArt:\"Reparaturart w\\xe4hlen\",flachdachPvAnlage:\"PV Anlage gew\\xfcnscht\",flachdachGrundflaeche:\"Grundfl\\xe4che angeben\",spitzdachService:\"Spitzdach Leistung w\\xe4hlen\",spitzdachKomplettFenster:\"Dachfenster integrieren\",steildachFensterAnzahl:\"Fenster Anzahl\",steildachFensterGroesse:\"Fenstergr\\xf6\\xdfe w\\xe4hlen\",spitzdachKomplettGaube:\"Gaube hinzuf\\xfcgen\",steildachGaubenAnzahl:\"Gauben Anzahl\",spitzdachDaemmungTyp:\"D\\xe4mmqualit\\xe4t w\\xe4hlen\",spitzdachFensterTyp:\"Fenster Typ w\\xe4hlen\",spitzdachGaubenTyp:\"Gauben Typ w\\xe4hlen\",spitzdachGaubenAnzahl:\"Gauben Anzahl\",spitzdachRinnenMaterial:\"Rinnenmaterial w\\xe4hlen\",spitzdachReparaturArt:\"Reparaturart w\\xe4hlen\",spitzdachPvAnlage:\"PV Anlage gew\\xfcnscht\",spitzdachGrundflaeche:\"Grundfl\\xe4che angeben\",spitzdachNeigung:\"Dachneigung w\\xe4hlen\",spitzdachForm:\"Dachform w\\xe4hlen\",steildachFensterTyp:\"Steildach Fenster Typ\",steildachFensterGroesse:\"Steildach Fenstergr\\xf6\\xdfe\",steildachGaubenTyp:\"Steildach Gauben Typ\",zeitrahmen:\"Zeitrahmen festlegen\",eigentuemer:\"Rolle bestimmen\",address:\"Adresse eingeben\",name:\"Name eingeben\",email:\"E-Mail angeben\",phone:\"Telefon eingeben\"};// Move questionUrls outside the component\nconst questionUrls={roofType:\"schritt-1-dachtyp-waehlen\",flachdachService:\"schritt-2-flachdach-leistung-waehlen\",flachdachFenster:\"schritt-3-flachdach-fenster-hinzufuegen\",flachdachFensterAnzahl:\"schritt-4-flachdach-fenster-anzahl\",flachdachFensterGroesse:\"schritt-5-flachdach-fenster-groesse\",flachdachBegrunung:\"schritt-6-flachdach-begruenung-hinzufuegen\",flachdachBegrunungFlaeche:\"schritt-7-flachdach-begruenung-flaeche\",flachdachDaemmungTyp:\"schritt-3-flachdach-daemmung-qualitaet\",flachdachFensterTyp:\"schritt-3-flachdach-fenster-typ\",flachdachReparaturArt:\"schritt-3-flachdach-reparatur-art\",flachdachPvAnlage:\"schritt-8-flachdach-pv-anlage\",flachdachGrundflaeche:\"schritt-9-flachdach-grundflaeche\",spitzdachService:\"schritt-2-spitzdach-leistung-waehlen\",spitzdachKomplettFenster:\"schritt-3-spitzdach-fenster-gewuenscht\",steildachFensterAnzahl:\"schritt-4-spitzdach-fenster-anzahl\",steildachFensterGroesse:\"schritt-5-spitzdach-fenster-groesse\",spitzdachKomplettGaube:\"schritt-6-spitzdach-gaube-gewuenscht\",steildachGaubenAnzahl:\"schritt-7-spitzdach-gauben-anzahl\",spitzdachDaemmungTyp:\"schritt-3-spitzdach-daemmung-qualitaet\",spitzdachFensterTyp:\"schritt-3-spitzdach-fenster-typ\",spitzdachGaubenTyp:\"schritt-3-spitzdach-gauben-typ\",spitzdachGaubenAnzahl:\"schritt-4-spitzdach-gauben-anzahl\",spitzdachRinnenMaterial:\"schritt-3-spitzdach-rinnen-material\",spitzdachReparaturArt:\"schritt-3-spitzdach-reparatur-art\",spitzdachPvAnlage:\"schritt-8-spitzdach-pv-anlage\",spitzdachGrundflaeche:\"schritt-9-spitzdach-grundflaeche\",spitzdachNeigung:\"schritt-10-spitzdach-neigung\",spitzdachForm:\"schritt-11-spitzdach-form\",steildachFensterTyp:\"schritt-3-steildach-fenster-typ\",steildachFensterGroesse:\"schritt-5-steildach-fenster-groesse\",steildachGaubenTyp:\"schritt-3-steildach-gauben-typ\",zeitrahmen:\"schritt-12-zeitrahmen\",eigentuemer:\"schritt-13-eigentuemer\",address:\"schritt-14-adresse\",name:\"schritt-15-name\",email:\"schritt-16-email\",phone:\"schritt-17-telefon\"};// Move urlToQuestion outside the component\nconst urlToQuestion=Object.fromEntries(Object.entries(questionUrls).map(([k,v])=>[v,k]));/**\n * Roof Lead Form Component\n *\n * Features browser autocomplete for contact fields:\n * - First/Last name autocomplete from browser saved data\n * - Email autocomplete from browser saved data\n * - Phone number autocomplete from browser saved data\n * - Address autocomplete from both browser data and Google Maps\n *//**\n * Roof Lead Form Component\n *\n * Features browser autocomplete for contact fields:\n * - First/Last name autocomplete from browser saved data\n * - Email autocomplete from browser saved data\n * - Phone number autocomplete from browser saved data\n * - Address autocomplete from both browser data and Google Maps\n */function RoofLeadForm({initialQuestionId=\"roofType\",thankYouUrl=\"https://dachsatec.de/thank-you\",webhookId,serviceOverride=null,primaryColor=\"#5E68EA\",successColor=\"#10b981\",warningColor=\"#f59e0b\",selectedBackgroundColor=\"#f0f4ff\",selectedTextColor=\"#1e40af\",serviceCenterLatitude=51.2277,serviceCenterLongitude=6.7735,serviceRadiusKm=50,showDistanceWarning=true}){// Color helper function to generate variants\nconst generateColorVariants=baseColor=>{// Simple color darkening/lightening function\nconst hexToRgb=hex=>{const result=/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16),g:parseInt(result[2],16),b:parseInt(result[3],16)}:null;};const rgbToHex=(r,g,b)=>{return\"#\"+[r,g,b].map(x=>{const hex=Math.round(Math.max(0,Math.min(255,x))).toString(16);return hex.length===1?\"0\"+hex:hex;}).join(\"\");};const adjustBrightness=(color,percent)=>{const rgb=hexToRgb(color);if(!rgb)return color;const factor=percent/100;return rgbToHex(rgb.r*(1-factor),rgb.g*(1-factor),rgb.b*(1-factor));};const lighten=(color,percent)=>{const rgb=hexToRgb(color);if(!rgb)return color;const factor=percent/100;return rgbToHex(rgb.r+(255-rgb.r)*factor,rgb.g+(255-rgb.g)*factor,rgb.b+(255-rgb.b)*factor);};return{base:baseColor,hover:adjustBrightness(baseColor,15),light:lighten(baseColor,95)};};// Generate color variants\nconst primaryVariants=generateColorVariants(primaryColor);const successVariants=generateColorVariants(successColor);const warningVariants=generateColorVariants(warningColor);// Hash-based navigation mappings\nconst questionUrls={roofType:\"schritt-1-dachtyp-waehlen\",flachdachService:\"schritt-2-flachdach-leistung-waehlen\",flachdachFenster:\"schritt-3-flachdach-fenster-hinzufuegen\",flachdachFensterAnzahl:\"schritt-4-flachdach-fenster-anzahl\",flachdachFensterGroesse:\"schritt-5-flachdach-fenster-groesse\",flachdachBegrunung:\"schritt-6-flachdach-begruenung-hinzufuegen\",flachdachBegrunungFlaeche:\"schritt-7-flachdach-begruenung-flaeche\",flachdachDaemmungTyp:\"schritt-3-flachdach-daemmung-qualitaet\",flachdachFensterTyp:\"schritt-3-flachdach-fenster-typ\",flachdachReparaturArt:\"schritt-3-flachdach-reparatur-art\",flachdachPvAnlage:\"schritt-8-flachdach-pv-anlage\",flachdachGrundflaeche:\"schritt-9-flachdach-grundflaeche\",spitzdachService:\"schritt-2-spitzdach-leistung-waehlen\",spitzdachKomplettFenster:\"schritt-3-spitzdach-fenster-gewuenscht\",steildachFensterAnzahl:\"schritt-4-spitzdach-fenster-anzahl\",steildachFensterGroesse:\"schritt-5-spitzdach-fenster-groesse\",spitzdachKomplettGaube:\"schritt-6-spitzdach-gaube-gewuenscht\",steildachGaubenAnzahl:\"schritt-7-spitzdach-gauben-anzahl\",spitzdachDaemmungTyp:\"schritt-3-spitzdach-daemmung-qualitaet\",spitzdachFensterTyp:\"schritt-3-spitzdach-fenster-typ\",spitzdachGaubenTyp:\"schritt-3-spitzdach-gauben-typ\",spitzdachGaubenAnzahl:\"schritt-4-spitzdach-gauben-anzahl\",spitzdachRinnenMaterial:\"schritt-3-spitzdach-rinnen-material\",spitzdachReparaturArt:\"schritt-3-spitzdach-reparatur-art\",spitzdachPvAnlage:\"schritt-8-spitzdach-pv-anlage\",spitzdachGrundflaeche:\"schritt-9-spitzdach-grundflaeche\",spitzdachNeigung:\"schritt-10-spitzdach-neigung\",spitzdachForm:\"schritt-11-spitzdach-form\",steildachFensterTyp:\"schritt-3-steildach-fenster-typ\",steildachFensterGroesse:\"schritt-5-steildach-fenster-groesse\",steildachGaubenTyp:\"schritt-3-steildach-gauben-typ\",zeitrahmen:\"schritt-12-zeitrahmen\",eigentuemer:\"schritt-13-eigentuemer\",address:\"schritt-14-adresse\",name:\"schritt-15-name\",email:\"schritt-16-email\",phone:\"schritt-17-telefon\"};const questionDependencies={flachdachService:{roofType:\"flachdach\"},flachdachFenster:{flachdachService:\"komplett\"},flachdachFensterAnzahl:{flachdachFenster:\"ja\"},flachdachFensterGroesse:{flachdachFenster:\"ja\"},flachdachBegrunung:{flachdachService:\"komplett\"},flachdachBegrunungFlaeche:{flachdachBegrunung:\"ja\"},flachdachDaemmungTyp:{flachdachService:\"daemmung\"},flachdachFensterTyp:{flachdachService:\"fenster\"},flachdachFensterAnzahl:{flachdachService:\"fenster\"},flachdachFensterGroesse:{flachdachService:\"fenster\"},flachdachReparaturArt:{flachdachService:\"reparatur\"},flachdachPvAnlage:{flachdachService:\"komplett\"},flachdachGrundflaeche:{roofType:\"flachdach\"},spitzdachService:{roofType:\"spitzdach\"},spitzdachKomplettFenster:{spitzdachService:\"komplett\"},steildachFensterAnzahl:{spitzdachKomplettFenster:\"ja\"},steildachFensterGroesse:{spitzdachKomplettFenster:\"ja\"},spitzdachKomplettGaube:{spitzdachService:\"komplett\"},steildachGaubenAnzahl:{spitzdachKomplettGaube:\"ja\"},spitzdachDaemmungTyp:{spitzdachService:\"daemmung\"},spitzdachFensterTyp:{spitzdachService:\"fenster\"},spitzdachGaubenTyp:{spitzdachService:\"gauben\"},spitzdachGaubenAnzahl:{spitzdachService:\"gauben\"},spitzdachRinnenMaterial:{spitzdachService:\"dachrinnen\"},spitzdachReparaturArt:{spitzdachService:\"reparatur\"},spitzdachPvAnlage:{spitzdachService:\"komplett\"},spitzdachGrundflaeche:{roofType:\"spitzdach\"},spitzdachNeigung:{roofType:\"spitzdach\"},spitzdachForm:{roofType:\"spitzdach\"},steildachFensterTyp:{spitzdachService:\"fenster\"},steildachFensterGroesse:{spitzdachService:\"fenster\"},steildachGaubenTyp:{spitzdachService:\"gauben\"}};const urlToQuestion=Object.fromEntries(Object.entries(questionUrls).map(([k,v])=>[v,k]));// Function to get required answers recursively\nconst getRequiredAnswers=questionId=>{let required={};let current=questionId;while(current){const dep=questionDependencies[current];if(dep){const parent=Object.keys(dep)[0];required[parent]=dep[parent];current=parent;}else{current=null;}}// Ensure branch root\nif(!required.roofType){if(questionId.includes(\"flachdach\")){required.roofType=\"flachdach\";}else if(questionId.includes(\"spitzdach\")||questionId.includes(\"steildach\")){required.roofType=\"spitzdach\";}}return required;};// Local storage key\nconst STORAGE_KEY=\"roofLeadFormAnswers\";// Load saved answers from localStorage\nlet savedAnswers={};if(typeof window!==\"undefined\"){const saved=localStorage.getItem(STORAGE_KEY);if(saved){try{savedAnswers=JSON.parse(saved);}catch(e){console.error(\"Failed to parse saved answers:\",e);savedAnswers={};}}}// Initialize answers with saved data\nlet initialAnswers={...savedAnswers};let initialPending=null;if(typeof window!==\"undefined\"){const hash=window.location.hash.slice(1);const qId=hash?urlToQuestion[hash]:initialQuestionId;if(qId){const required=getRequiredAnswers(qId);initialAnswers={...initialAnswers,...required};initialPending=qId;}}// State management\nconst[isAddressFromGoogle,setIsAddressFromGoogle]=useState(false);const[currentStep,setCurrentStep]=useState(0);const[answers,setAnswers]=useState(initialAnswers);const[questionFlow,setQuestionFlow]=useState([]);const[totalSteps,setTotalSteps]=useState(0);const[isMobile,setIsMobile]=useState(false);//const [isSubmitted, setIsSubmitted] = useState(false)\nconst[isSubmitting,setIsSubmitting]=useState(false);const[isGoogleMapsLoaded,setIsGoogleMapsLoaded]=useState(false);const[isMieterSelected,setIsMieterSelected]=useState(false);const[isOutOfServiceArea,setIsOutOfServiceArea]=useState(false);const[distanceFromCenter,setDistanceFromCenter]=useState(null);const[showServiceAreaWarning,setShowServiceAreaWarning]=useState(false);const[pendingStep,setPendingStep]=useState(initialPending);const[isReady,setIsReady]=useState(!initialPending);// NEW: UTM tracking state\nconst[utmParams,setUtmParams]=useState({});const[referrerInfo,setReferrerInfo]=useState({});const[addressComponents,setAddressComponents]=useState({street_name:null,house_number:null,postal_code:null,city:null,state:null,country:null,formatted_address:null,address_source:null,// NEW: Coordinates\nlatitude:null,longitude:null,place_id:null});// Ref for Google Maps autocomplete and map display\nconst autocompleteRef=useRef(null);const addressInputRef=useRef(null);const mapRef=useRef(null);const mapInstanceRef=useRef(null);useMemo(()=>{const hash=window.location.hash.slice(1);const questionId=urlToQuestion[hash];if(questionId){const required=getRequiredAnswers(questionId);setAnswers(prev=>({...prev,...required}));setPendingStep(questionId);}},[]);// Save answers to localStorage when they change\nuseEffect(()=>{if(typeof window!==\"undefined\"){localStorage.setItem(STORAGE_KEY,JSON.stringify(answers));}},[answers]);// Hash change handler\nconst handleHashChange=()=>{const hash=window.location.hash.slice(1);const questionId=urlToQuestion[hash];if(questionId){const required=getRequiredAnswers(questionId);setAnswers(prev=>({...prev,...required}));setPendingStep(questionId);}};// Set step when flow updates and pending\nconst[minStep,setMinStep]=useState(0);useEffect(()=>{if(pendingStep){const index=questionFlow.findIndex(id=>id===pendingStep);if(index!==-1){setCurrentStep(index);setMinStep(index);setPendingStep(null);setIsReady(true);}}},[questionFlow,pendingStep]);// Update hash and title on step change\nuseEffect(()=>{const currentId=questionFlow[currentStep];if(currentId&&questionUrls[currentId]){window.location.hash=questionUrls[currentId];}if(currentId&&questionTitles[currentId]){document.title=`${questionTitles[currentId]} - Holzmann Bedachungen`;}},[currentStep,questionFlow]);// Clamp currentStep if flow changes and currentStep is out of bounds\nuseEffect(()=>{if(questionFlow.length>0&&currentStep>=questionFlow.length){setCurrentStep(questionFlow.length-1);}},[questionFlow,currentStep]);// Styling constants with enhanced color system\nconst colors={primary:primaryVariants.base,primaryHover:primaryVariants.hover,primaryLight:selectedBackgroundColor,selectedText:selectedTextColor,success:successVariants.base,successLight:successVariants.light,warning:warningVariants.base,warningLight:warningVariants.light,error:\"#ef4444\",errorLight:\"#fee2e2\",gray:{50:\"#f9fafb\",100:\"#f3f4f6\",200:\"#e5e7eb\",300:\"#d1d5db\",400:\"#9ca3af\",500:\"#6b7280\",600:\"#4b5563\",700:\"#374151\",800:\"#1f2937\",900:\"#111827\"}};const containerStyle={minHeight:\"100vh\",backgroundColor:\"#fff\",fontFamily:'-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Inter\", \"Helvetica Neue\", sans-serif'};const contentContainerStyle={padding:isMobile?\"22px\":\"36px\",paddingTop:isMobile?\"20px\":\"30px\"};const cardStyle={backgroundColor:\"white\",borderRadius:\"24px\",border:\"1px solid #f1f5f9\",padding:isMobile?\"24px 32px\":\"46px 48px\",marginBottom:isMobile?\"32px\":\"40px\",width:\"100%\",boxSizing:\"border-box\",boxShadow:\"0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)\",transform:\"translateY(0)\",opacity:1,animation:\"slideInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1)\"};const mainContainerStyle={maxWidth:\"900px\",margin:\"0 auto\",width:\"100%\"};// Image mappings for visual questions\n// Image mappings for visual questions\nconst questionImages={roofType:{flachdach:\"https://framerusercontent.com/images/KUA77WVzNxrp0aj4Nwyj2UljTM.png\",spitzdach:\"https://framerusercontent.com/images/JyN4RrUxU2nw7KgcljvQF6zaPNU.png\"},flachdachService:{komplett:\"https://framerusercontent.com/images/ahXkYV8Qz3ioDNccSw1JZO1euU.png\",daemmung:\"https://framerusercontent.com/images/2vAN1jtcPA9o1EvxH0glU2nsEkw.png\",fenster:\"https://framerusercontent.com/images/E4wh9YD38dUh7jDikkdvURBiH2E.png\",begrunung:\"https://framerusercontent.com/images/qsmQTPfXM1BbKV3TFWts6wFq69Y.png\",reparatur:\"https://framerusercontent.com/images/O1tdfngHL4i4p0Er25izb58SU.png\"},spitzdachService:{komplett:\"https://framerusercontent.com/images/gH68oi2imH0lr7lSThwCquMbTb8.webp\",daemmung:\"https://framerusercontent.com/images/a3HLLGoKDcen5LBIGkFPoV9GmtY.webp\",fenster:\"https://framerusercontent.com/images/zNPIz0q64YX0sP7gPn7bsGYFkXk.webp\",gauben:\"https://framerusercontent.com/images/aV11lUijwHW1zOTJrm3UlfC0Fw.png\",dachrinnen:\"https://framerusercontent.com/images/g8Pf9judovfnuUT5kkfDQ1f4yo.png\",reparatur:\"https://framerusercontent.com/images/omCKRrXax665zHdt6DtqK1N4E.webp\"},spitzdachNeigung:{unter22:\"https://framerusercontent.com/images/zeIfvdqqpMzcipUAj2nYLrKdSyY.png\",\"22-40\":\"https://framerusercontent.com/images/813ly6InZfXGfBEHC5N1ynL997Q.png\",\"40-60\":\"https://framerusercontent.com/images/sS4uld2CI1l9jGHm6rHQ1uLek.png\",ueber60:\"https://framerusercontent.com/images/eAH3j6ZT3oCYm6QciR1DRf8FpEQ.png\"},spitzdachForm:{satteldach:\"https://framerusercontent.com/images/kEALNlWigJIZornw7RBPNHGEU3c.png\",walmdach:\"https://framerusercontent.com/images/4iK1r6L3M5VwJW6XckXcRXEY.png\",pultdach:\"https://framerusercontent.com/images/wBDA8OjZC3qEUUh2KShQWvYw5xU.png\",krueppelwalmdach:\"https://framerusercontent.com/images/596eit6cuBZDec5P7Q0En855c.png\",flachdach:\"https://framerusercontent.com/images/oDbWAZLgMjRKM4vhNznywNOY.png\"},flachdachFensterTyp:{neu:\"https://framerusercontent.com/images/xCZ2xuTFmAi8uNjzvjwrXUKWw.png\",bestehend:\"https://framerusercontent.com/images/E4wh9YD38dUh7jDikkdvURBiH2E.png\"},flachdachFensterGroesse:{klein:\"https://framerusercontent.com/images/9jcWJk6KWFFGxAkCQPTJYNYs.png\",mittel:\"https://framerusercontent.com/images/YNs2Cm4weHxS9I3p1DEmMzUkk.png\",gross:\"https://framerusercontent.com/images/uA1z5vOhnUoXaPSw2upFWdGgLDw.png\"},spitzdachFensterTyp:{neu:\"https://framerusercontent.com/images/yWgAP0bp7XIRNDmUEeByp8l0sU.png\",bestehend:\"https://framerusercontent.com/images/zNPIz0q64YX0sP7gPn7bsGYFkXk.webp\"},steildachFensterTyp:{neu:\"https://framerusercontent.com/images/yWgAP0bp7XIRNDmUEeByp8l0sU.png\",bestehend:\"https://framerusercontent.com/images/H4sDMkXjycunUN6H36MvHgKqu8.png\"},steildachFensterGroesse:{klein:\"https://framerusercontent.com/images/JMX0TLNWAaBqAxAcwcPs78pvA.png\",mittel:\"https://framerusercontent.com/images/TdXrJnAc9vR5WW3DtkkjQBtoMI.png\",gross:\"https://framerusercontent.com/images/XMNNTKWFYoxfgzsZR8cQ3SN4wdA.png\"},spitzdachGaubenTyp:{neu:\"https://framerusercontent.com/images/AUBT0qrtKlZPQn130vuhXtCN74.png\",bestehend:\"https://framerusercontent.com/images/USUGGUoIGx1vHfE6nfgwLFBrQlk.png\"},steildachGaubenTyp:{neu:\"https://framerusercontent.com/images/AUBT0qrtKlZPQn130vuhXtCN74.png\",bestehend:\"https://framerusercontent.com/images/USUGGUoIGx1vHfE6nfgwLFBrQlk.png\"},spitzdachRinnenMaterial:{standard:\"https://framerusercontent.com/images/jVMqMHUUb8DFoXwHgKJlTTuTIKk.png\",premium:\"https://framerusercontent.com/images/dlb9jZ3H3dJSPPMNvijd7OtmM.png\",kupfer:\"https://framerusercontent.com/images/QTORim3xk2kELymzmoeITKY08U.png\"},flachdachReparaturArt:{ausbessern:\"https://framerusercontent.com/images/5cNgQdmxhabBoaGUS26syCL8bw.png\",undicht:\"https://framerusercontent.com/images/gBzVmwsQpmVl6n3nTCeXqqhs.png\"},spitzdachReparaturArt:{ziegel:\"https://framerusercontent.com/images/q9op5YQfF87HJK6ARWIXQ6530f0.png\",undicht:\"https://framerusercontent.com/images/UG3ZlOKESo4i7Qo0RKLrE5Gjo.png\"},flachdachDaemmungTyp:{untersparrendaemmung:\"https://framerusercontent.com/images/FZfCgVBZd8fitQQnVcs0cnKEUFU.png\",zwischensparrendaemmung:\"https://framerusercontent.com/images/LA2q9Z5i5IzqciKZ9q7GSwA8.png\",aufsparrendaemmung:\"https://framerusercontent.com/images/2OmLRMRxQbeeYtllxUOZbR7V9AI.png\"},spitzdachDaemmungTyp:{untersparrendaemmung:\"https://framerusercontent.com/images/WRNUfsf6EcYaMozHstsB9SYrloM.png\",zwischensparrendaemmung:\"https://framerusercontent.com/images/u09d2qEgmEp0HnjQIae2bTMgY.png\",aufsparrendaemmung:\"https://framerusercontent.com/images/ibLLxxvl8i9cM1BT5cZZt8bzvI4.png\"},spitzdachKomplettFenster:{ja:\"https://framerusercontent.com/images/wmpfPND54tq5CG3oL2hhtVES59M.png\",nein:\"https://framerusercontent.com/images/vo9WObh13YiycSS1S7QFRe7fQ.png\"},spitzdachKomplettGaube:{ja:\"https://framerusercontent.com/images/B3pFAZc7qZBxpDbSYsRUwNECpcM.png\",nein:\"https://framerusercontent.com/images/vo9WObh13YiycSS1S7QFRe7fQ.png\"},flachdachFenster:{ja:\"https://framerusercontent.com/images/E4wh9YD38dUh7jDikkdvURBiH2E.png\",nein:\"https://framerusercontent.com/images/ahXkYV8Qz3ioDNccSw1JZO1euU.png\"},flachdachBegrunung:{ja:\"https://framerusercontent.com/images/BD8NY960W2nOEcn67UykI3RUZdY.png\",nein:\"https://framerusercontent.com/images/ahXkYV8Qz3ioDNccSw1JZO1euU.png\"},flachdachPvAnlage:{ja:\"https://framerusercontent.com/images/tthGr8zPqryHsLVCAEqj6YCRtLM.png\",nein:\"https://framerusercontent.com/images/ahXkYV8Qz3ioDNccSw1JZO1euU.png\"},spitzdachPvAnlage:{ja:\"https://framerusercontent.com/images/8FpAZw6Cpu3JWAmlacUZ5TsR1AA.webp\",nein:\"https://framerusercontent.com/images/1J6BLKXtQxn7qhfCBuAhOUAno.webp\"}};// Haversine formula to calculate distance between two coordinates\nconst calculateDistance=(lat1,lon1,lat2,lon2)=>{const R=6371;const dLat=(lat2-lat1)*(Math.PI/180);const dLon=(lon2-lon1)*(Math.PI/180);const a=Math.sin(dLat/2)*Math.sin(dLat/2)+Math.cos(lat1*(Math.PI/180))*Math.cos(lat2*(Math.PI/180))*Math.sin(dLon/2)*Math.sin(dLon/2);const c=2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a));const distance=R*c;return distance;};// Enhanced phone validation and formatting functions - Mobile Autocomplete Optimized\nconst formatPhoneNumber=value=>{// Handle empty input\nif(!value||value===\"\")return\"\";// Allow + sign to be typed\nif(value===\"+\")return\"+\";if(value===\"+4\")return\"+4\";if(value===\"+49\")return\"+49\";// Handle mobile autocomplete - preserve formatted phone numbers\nif(value.includes(\"+49\")&&(value.includes(\" \")||value.includes(\"-\")||value.includes(\".\")||value.length>13)){const cleanNumber=value.replace(/[^\\d+]/g,\"\");if(cleanNumber.startsWith(\"+49\")&&cleanNumber.length>3){return cleanNumber;}}// Handle autocomplete that comes without +49 but is clearly a full German number\nif(!value.startsWith(\"+\")&&value.length>10&&(value.includes(\" \")||value.includes(\"-\"))){const cleanNumber=value.replace(/\\D/g,\"\");if(cleanNumber.startsWith(\"49\")){return`+${cleanNumber}`;}else if(cleanNumber.startsWith(\"0\")){return`+49${cleanNumber.substring(1)}`;}else if(cleanNumber.length>=9){return`+49${cleanNumber}`;}}// Check if user is typing in the +49 format manually\nif(value.startsWith(\"+49\")){const numbersAfter49=value.substring(3).replace(/\\D/g,\"\");// PREVENT +4949 scenarios\nif(numbersAfter49.startsWith(\"49\")){return`+49${numbersAfter49.substring(2)}`;}if(numbersAfter49.length>=1){return`+49${numbersAfter49}`;}else{return\"+49\";}}// User is NOT typing +49 format - extract numbers and format when ready\nlet numbers=value.replace(/\\D/g,\"\");// HANDLE SPECIAL CASE: if they typed \"049\", convert directly to \"+49\"\nif(numbers===\"049\"){return\"+49\";}// HANDLE CASE: if they typed \"49\" at the start\nif(numbers.startsWith(\"49\")&&numbers.length>2){const restOfNumber=numbers.substring(2);return`+49${restOfNumber}`;}// MODIFIED: Keep leading zero until 5 digits\nif(numbers.startsWith(\"0\")){if(numbers.length>=5){// After 5 digits, remove zero and format\nreturn`+49${numbers.substring(1)}`;}else{// Before 5 digits, keep the leading zero\nreturn numbers;}}// If no numbers left, return empty\nif(numbers.length===0)return\"\";// For numbers without leading 0, still format after 3 digits\nif(numbers.length>=3){return`+49${numbers}`;}else{// Show raw numbers until 3rd digit\nreturn numbers;}};const validatePhoneNumber=phone=>{if(!phone||phone===\"\")return false;// Remove all formatting that mobile autofill might add\nconst cleanPhone=phone.replace(/[\\s\\-\\(\\)\\./]/g,\"\");// Handle different formats\nif(cleanPhone.startsWith(\"+49\")){const germanNumber=cleanPhone.substring(3);// Accept 9-12 digits to cover all German phone formats\n// 9 digits: shortest landlines (e.g., some rural areas)\n// 12 digits: longest mobile numbers\nreturn/^\\d{9,12}$/.test(germanNumber);}// Handle autofill without +49 prefix\nif(cleanPhone.startsWith(\"49\")){const germanNumber=cleanPhone.substring(2);return/^\\d{9,12}$/.test(germanNumber);}// Handle autofill with leading zero (0176 format)\nif(cleanPhone.startsWith(\"0\")){const germanNumber=cleanPhone.substring(1);return/^\\d{9,11}$/.test(germanNumber);}// Handle direct number (176... format)\nreturn/^\\d{9,12}$/.test(cleanPhone);};const detectPhoneType=phone=>{if(!phone)return null;// Extract just the numbers after country code\nlet numbers=phone.replace(/[^\\d]/g,\"\");// Remove country code if present\nif(numbers.startsWith(\"49\")){numbers=numbers.substring(2);}// Check if it's a mobile number (starts with 1)\nif(numbers.startsWith(\"1\")){return\"mobile\";}// Otherwise it's a landline\nreturn\"landline\";};// Address parsing functions\n// Enhanced address parsing functions with city extraction fix\n// Enhanced address parsing functions with city extraction fix\n// Address parsing functions - FIXED VERSION\nconst parseGooglePlaceComponents=place=>{const components={street_name:null,house_number:null,postal_code:null,city:null,state:null,country:null,formatted_address:place.formatted_address||null,address_source:\"google_maps\",latitude:place.geometry?.location?.lat()||null,longitude:place.geometry?.location?.lng()||null,place_id:place.place_id||null};// First pass: collect all components\nlet locality=null;let administrative_area_level_2=null;let administrative_area_level_1=null;let sublocality=null;if(place.address_components){place.address_components.forEach(component=>{const types=component.types;if(types.includes(\"street_number\")){components.house_number=component.long_name;}if(types.includes(\"route\")){components.street_name=component.long_name;}if(types.includes(\"postal_code\")){components.postal_code=component.long_name;}// Collect different city-level components\nif(types.includes(\"locality\")){locality=component.long_name;}if(types.includes(\"administrative_area_level_2\")){administrative_area_level_2=component.long_name;}if(types.includes(\"administrative_area_level_1\")){administrative_area_level_1=component.long_name;components.state=component.long_name;}if(types.includes(\"sublocality\")||types.includes(\"sublocality_level_1\")){sublocality=component.long_name;}if(types.includes(\"country\")){components.country=component.long_name;}});}// Smart city selection with fallback to formatted address\ncomponents.city=selectBestCity(locality,administrative_area_level_2,sublocality,place.formatted_address,components.postal_code);return components;};// Enhanced city selection function\nconst selectBestCity=(locality,administrative_area_level_2,sublocality,formatted_address,postal_code)=>{// Strategy 1: Prioritize locality (most accurate for cities)\nif(locality){return locality;}// Strategy 2: Extract city from formatted address as fallback\nif(formatted_address){const cityFromAddress=extractCityFromFormattedAddress(formatted_address,postal_code);if(cityFromAddress){return cityFromAddress;}}// Strategy 3: Use sublocality if available\nif(sublocality){return sublocality;}// Strategy 4: Fall back to administrative area\nif(administrative_area_level_2){return administrative_area_level_2;}return null;};// Function to extract city from formatted address\nconst extractCityFromFormattedAddress=(formatted_address,postal_code)=>{if(!formatted_address)return null;try{// German address format: \"Street Number, PostalCode City, State, Country\"\n// Example: \"Hehner Str. 41, 41069 M\u00F6nchengladbach, Deutschland\"\nconst parts=formatted_address.split(\",\").map(part=>part.trim());for(const part of parts){// Look for part that contains postal code followed by city name\nif(postal_code&&part.includes(postal_code)){// Extract everything after the postal code\nconst cityMatch=part.match(`${postal_code}\\\\s+(.+)`);if(cityMatch&&cityMatch[1]){return cityMatch[1].trim();}}// Alternative: Look for German postal code pattern (5 digits) followed by city\nconst germanPostalPattern=/(\\d{5})\\s+(.+)/;const match=part.match(germanPostalPattern);if(match&&match[2]){// Verify this isn't just a number or state name\nconst potentialCity=match[2].trim();if(potentialCity&&!potentialCity.match(/^\\d+$/)&&// Not just numbers\npotentialCity.length>2&&// Reasonable length\n!potentialCity.includes(\"Deutschland\")&&// Not country name\n!potentialCity.includes(\"Germany\")){// Not country name\nreturn potentialCity;}}}// Fallback: Try to find city-like strings in the middle parts\nif(parts.length>=2){const middlePart=parts[1]// Usually contains \"PostalCode City\"\n;const cityPattern=/\\d{5}\\s+([^,]+)/;const match=middlePart.match(cityPattern);if(match&&match[1]){return match[1].trim();}}}catch(error){console.log(\"Error extracting city from formatted address:\",error);}return null;};// Enhanced manual address parsing that also handles city extraction better\nconst parseManualAddress=addressString=>{if(!addressString||typeof addressString!==\"string\"){return{street_name:null,house_number:null,postal_code:null,city:null,state:null,country:\"Germany\",formatted_address:addressString,address_source:\"manual_entry\",latitude:null,longitude:null,place_id:null};}const components={street_name:null,house_number:null,postal_code:null,city:null,state:null,country:\"Germany\",formatted_address:addressString.trim(),address_source:\"manual_entry\",latitude:null,longitude:null,place_id:null};try{// Enhanced German address format parsing\nconst addressParts=addressString.split(\",\").map(part=>part.trim());if(addressParts.length>=2){// First part: street and house number\nconst streetPart=addressParts[0].trim();const streetMatch=streetPart.match(/^(.+?)\\s+(\\d+[a-zA-Z]?)$/);if(streetMatch){components.street_name=streetMatch[1].trim();components.house_number=streetMatch[2].trim();}else{components.street_name=streetPart;}// Second part: postal code and city - enhanced extraction\nconst cityPart=addressParts[1].trim();const cityMatch=cityPart.match(/^(\\d{5})\\s+(.+)$/);if(cityMatch){components.postal_code=cityMatch[1];// Clean up city name (remove extra spaces, handle special characters)\ncomponents.city=cityMatch[2].trim();}else{// Try alternative patterns\nconst postalMatch=cityPart.match(/^(\\d{5})/);if(postalMatch){components.postal_code=postalMatch[1];components.city=cityPart.replace(postalMatch[1],\"\").trim();}else{components.city=cityPart;}}// Third part (if exists): state\nif(addressParts.length>=3){components.state=addressParts[2].trim();}}else{// Single line address - enhanced parsing\nconst singleLineMatch=addressString.match(/^(.+?)\\s+(\\d+[a-zA-Z]?).+?(\\d{5})\\s+(.+)$/);if(singleLineMatch){components.street_name=singleLineMatch[1].trim();components.house_number=singleLineMatch[2].trim();components.postal_code=singleLineMatch[3];components.city=singleLineMatch[4].trim();}}// Post-processing: Clean up city name\nif(components.city){// Remove common suffixes that might be included\ncomponents.city=components.city.replace(/,.*$/,\"\")// Remove everything after comma\n.replace(/\\s+Deutschland$/,\"\")// Remove \"Deutschland\" if present\n.replace(/\\s+Germany$/,\"\")// Remove \"Germany\" if present\n.trim();}}catch(error){console.log(\"Address parsing error:\",error);}return components;};// Updated address component update function\nconst updateAddressComponents=(address,source=\"manual_entry\")=>{let components;if(source===\"google_maps\"&&address&&typeof address===\"object\"){// Google Places API result\ncomponents=parseGooglePlaceComponents(address);}else{// Manual entry or string address\ncomponents=parseManualAddress(address);}setAddressComponents(components);// Debug logging to verify city extraction\nconsole.log(\"Address components parsed:\",components);console.log(\"Extracted city:\",components.city);console.log(\"Formatted address:\",components.formatted_address);return components;};// UTM and tracking functions\nconst generateSessionId=()=>{return Date.now().toString(36)+Math.random().toString(36).substr(2);};// GA4 Tracking Functions - ADD THESE AFTER generateSessionId function\nconst trackGA4Event=(eventName,parameters={})=>{if(typeof window!==\"undefined\"&&window.gtag){try{window.gtag(\"event\",eventName,{form_name:\"roof_lead_form\",form_version:\"1.0\",timestamp:new Date().toISOString(),...parameters});console.log(`GA4 Event fired: ${eventName}`,parameters);}catch(error){console.log(\"GA4 tracking error:\",error);}}};const trackFormStart=()=>{trackGA4Event(\"begin_checkout\",{event_category:\"engagement\",event_label:\"form_start\",currency:\"EUR\",value:0,items:[{item_id:\"roof_consultation\",item_name:\"Roof Consultation Request\",item_category:\"lead_generation\",quantity:1,price:0}]});trackGA4Event(\"form_started\",{event_category:\"funnel\",event_label:\"roof_lead_form_start\",funnel_name:\"roof_lead_generation\",step_number:0,step_name:\"start\"});};const trackStepProgression=(fromStep,toStep,questionId,answer)=>{const fromStepName=questionFlow[fromStep]||\"unknown\";const toStepName=questionFlow[toStep]||\"unknown\";trackGA4Event(\"funnel_step_completed\",{event_category:\"funnel\",event_label:\"step_completed\",funnel_name:\"roof_lead_generation\",step_number:fromStep+1,step_name:fromStepName,question_id:questionId,answer_provided:answer?\"yes\":\"no\",total_steps:questionFlow.length,progress_percentage:Math.round((fromStep+1)/questionFlow.length*100)});trackGA4Event(\"funnel_step_viewed\",{event_category:\"funnel\",event_label:\"step_viewed\",funnel_name:\"roof_lead_generation\",step_number:toStep+1,step_name:toStepName,total_steps:questionFlow.length,progress_percentage:Math.round((toStep+1)/questionFlow.length*100)});};const trackFormCompletion=(formData=>{trackGA4Event(\"purchase\",{event_category:\"conversion\",event_label:\"form_completed\",transaction_id:`roof_lead_${Date.now()}`,currency:\"EUR\",value:100,items:[{item_id:\"roof_consultation_completed\",item_name:\"Roof Consultation Request Completed\",item_category:\"lead_generation\",item_variant:formData.roofType||\"unknown\",quantity:1,price:100}]});trackGA4Event(\"form_completed\",{event_category:\"funnel\",event_label:\"roof_lead_form_completed\",funnel_name:\"roof_lead_generation\",step_number:questionFlow.length,step_name:\"completed\",roof_type:formData.roofType,service_type:formData.flachdachService||formData.spitzdachService,completion_rate:100,total_steps:questionFlow.length});})/1;// Place after your existing trackFormCompletion function\nconst trackStepView=(stepIndex,questionId,hashUrl)=>{trackGA4Event(\"step_viewed\",{event_category:\"form_funnel\",event_label:\"step_view\",// The key data you need\nstep_number:stepIndex+1,step_hash_url:hashUrl,step_question_id:questionId,// Basic context\ntotal_steps:questionFlow.length,progress_percentage:Math.round((stepIndex+1)/questionFlow.length*100),// For easy filtering\nfunnel_name:\"roof_lead_generation\"});console.log(`Step viewed: ${hashUrl}`);};const trackStepExit=(stepIndex,questionId,hashUrl)=>{trackGA4Event(\"step_exited\",{event_category:\"form_funnel\",event_label:\"step_exit\",// The key data you need  \nexit_step_number:stepIndex+1,exit_step_hash_url:hashUrl,exit_step_question_id:questionId,// Basic context\ntotal_steps:questionFlow.length,exit_progress_percentage:Math.round((stepIndex+1)/questionFlow.length*100),// For easy filtering\nfunnel_name:\"roof_lead_generation\"});console.log(`Step exited: ${hashUrl}`);};const trackFormAbandonment=(currentStepIndex,questionId)=>{const stepName=questionFlow[currentStepIndex]||\"unknown\";trackGA4Event(\"form_abandoned\",{event_category:\"funnel\",event_label:\"form_abandoned\",funnel_name:\"roof_lead_generation\",step_number:currentStepIndex+1,step_name:stepName,question_id:questionId,abandonment_point:stepName,progress_percentage:Math.round((currentStepIndex+1)/questionFlow.length*100),total_steps:questionFlow.length});};const trackQuestionInteraction=(questionId,questionType,answer)=>{trackGA4Event(\"question_answered\",{event_category:\"engagement\",event_label:\"question_interaction\",question_id:questionId,question_type:questionType,answer_value:typeof answer===\"object\"?JSON.stringify(answer):String(answer),interaction_type:\"answer_provided\"});};const captureUTMParameters=()=>{if(typeof window===\"undefined\")return{utm:{},referrer:{}};const urlParams=new URLSearchParams(window.location.search);const utm={};const referrer={};// Capture UTM parameters\nconst utmKeys=[\"utm_source\",\"utm_medium\",\"utm_campaign\",\"utm_content\",\"utm_term\",\"utm_id\"];utmKeys.forEach(key=>{const value=urlParams.get(key);if(value){utm[key]=value;}});// Capture additional tracking info\nreferrer.url=document.referrer||\"direct\";referrer.userAgent=navigator.userAgent;referrer.timestamp=new Date().toISOString();referrer.landingPage=window.location.href;referrer.sessionId=generateSessionId();// Capture Facebook Click ID if present\nconst fbclid=urlParams.get(\"fbclid\");if(fbclid){referrer.facebook_click_id=fbclid;}return{utm,referrer};};const handlePhoneInput=(value,questionId)=>{// Handle complete deletion\nif(value===\"\"){handleAnswer(questionId,\"\");return;}// Handle edge cases with multiple + signs\nif(value.includes(\"++\")){const cleanValue=value.replace(/\\++/g,\"+\");const formattedValue=formatPhoneNumber(cleanValue);handleAnswer(questionId,formattedValue);return;}// Handle normal input - format based on what user is typing\nconst formattedValue=formatPhoneNumber(value);handleAnswer(questionId,formattedValue);};// Mobile detection\nuseEffect(()=>{const checkMobile=()=>{setIsMobile(window.innerWidth<=768);};checkMobile();window.addEventListener(\"resize\",checkMobile);return()=>window.removeEventListener(\"resize\",checkMobile);},[]);// UTM Parameter Capture\nuseEffect(()=>{const{utm,referrer}=captureUTMParameters();setUtmParams(utm);setReferrerInfo(referrer);// Store in sessionStorage for persistence across page reloads\nif(Object.keys(utm).length>0){try{sessionStorage.setItem(\"utm_params\",JSON.stringify(utm));}catch(e){console.log(\"SessionStorage not available\");}}try{sessionStorage.setItem(\"referrer_info\",JSON.stringify(referrer));}catch(e){console.log(\"SessionStorage not available\");}// Log for debugging (remove in production)\nif(Object.keys(utm).length>0){console.log(\"UTM Parameters captured:\",utm);}console.log(\"Referrer info captured:\",referrer);},[]);// ADD this useEffect AFTER your UTM Parameter Capture useEffect:\nuseEffect(()=>{// Track form start when component mounts\nif(isReady){trackFormStart();}// Track page abandonment when user leaves\nconst handleBeforeUnload=()=>{if(currentStep<questionFlow.length-1&&questionFlow.length>0){trackFormAbandonment(currentStep,questionFlow[currentStep]);}};const handleVisibilityChange=()=>{if(document.hidden&&currentStep<questionFlow.length-1&&questionFlow.length>0){trackFormAbandonment(currentStep,questionFlow[currentStep]);}};if(typeof window!==\"undefined\"){window.addEventListener(\"beforeunload\",handleBeforeUnload);document.addEventListener(\"visibilitychange\",handleVisibilityChange);}return()=>{if(typeof window!==\"undefined\"){window.removeEventListener(\"beforeunload\",handleBeforeUnload);document.removeEventListener(\"visibilitychange\",handleVisibilityChange);}};},[isReady,currentStep,questionFlow]);// ADD this useEffect right after the form tracking useEffect:\nuseEffect(()=>{// Just track when steps are viewed\nif(isReady&&questionFlow.length>0&&currentStep>=0){const currentQuestionId=questionFlow[currentStep];const currentHashUrl=questionUrls[currentQuestionId];if(currentQuestionId&&currentHashUrl){trackStepView(currentStep,currentQuestionId,currentHashUrl);}}},[currentStep,questionFlow,isReady]);useEffect(()=>{// Track exits only when user actually abandons\nconst handleBeforeUnload=()=>{if(currentStep<questionFlow.length-1&&questionFlow.length>0){const currentQuestionId=questionFlow[currentStep];const currentHashUrl=questionUrls[currentQuestionId];if(currentQuestionId&&currentHashUrl){trackStepExit(currentStep,currentQuestionId,currentHashUrl);}}};if(typeof window!==\"undefined\"){window.addEventListener(\"beforeunload\",handleBeforeUnload);}return()=>{if(typeof window!==\"undefined\"){window.removeEventListener(\"beforeunload\",handleBeforeUnload);}};},[currentStep,questionFlow]);// Thank You Page Component\nconst ThankYouPage=()=>/*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",top:\"0\",left:\"0\",right:\"0\",zIndex:50,height:\"4px\",backgroundColor:colors.primary,boxShadow:`0 0 8px ${colors.primary}40`}}),/*#__PURE__*/_jsx(\"div\",{style:contentContainerStyle,children:/*#__PURE__*/_jsx(\"div\",{style:mainContainerStyle,children:/*#__PURE__*/_jsxs(\"div\",{style:{...cardStyle,textAlign:\"center\",padding:isMobile?\"44px 32px\":\"44px 48px\",background:\"linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%)\",position:\"relative\",overflow:\"hidden\",marginTop:isMobile?\"40px\":\"60px\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"-50px\",right:\"-50px\",width:\"100px\",height:\"100px\",background:\"linear-gradient(45deg, #5E68EA, #818cf8)\",borderRadius:\"50%\",opacity:\"0.1\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",bottom:\"-30px\",left:\"-30px\",width:\"60px\",height:\"40px\",background:\"linear-gradient(45deg, #5E68EA, #818cf8)\",borderRadius:\"50%\",opacity:\"0.1\"}}),/*#__PURE__*/_jsx(\"div\",{style:{width:isMobile?\"70px\":\"120px\",height:isMobile?\"70px\":\"120px\",background:\"linear-gradient(135deg, #5E68EA, #818cf8)\",borderRadius:\"50%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",margin:\"0 auto 32px auto\",boxShadow:\"0 10px 25px rgba(94, 104, 234, 0.3)\",animation:\"successBounce 0.6s ease-out\"},children:/*#__PURE__*/_jsx(\"div\",{style:{fontSize:isMobile?\"22px\":\"48px\",color:\"white\",animation:\"checkmark 0.8s ease-out 0.3s both\"},children:\"\u2713\"})}),/*#__PURE__*/_jsx(\"h1\",{style:{fontSize:isMobile?\"24px\":\"42px\",fontWeight:\"700\",color:\"#111827\",margin:\"0 0 16px 0\",lineHeight:\"1.2\"},children:\"Vielen Dank!\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"16px\":\"22px\",color:\"#374151\",margin:\"0 0 8px 0\",lineHeight:\"1.4\",fontWeight:\"600\"},children:\"Ihre Anfrage wurde erfolgreich \\xfcbermittelt\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"16px\":\"18px\",color:\"#6b7280\",margin:\"0 0 40px 0\",lineHeight:\"1.6\",maxWidth:\"500px\",marginLeft:\"auto\",marginRight:\"auto\"},children:\"Unser Expertenteam wird Ihre Anfrage pr\\xfcfen und sich so schnell wie m\\xf6glich bei Ihnen melden. Sie k\\xf6nnen mit einer R\\xfcckmeldung innerhalb von 24 Stunden rechnen.\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:isMobile?\"1fr\":\"1fr 1fr\",gap:\"20px\",marginBottom:\"32px\",maxWidth:\"600px\",margin:\"0 auto 32px auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:isMobile?\"20px\":\"24px\",backgroundColor:\"white\",borderRadius:\"12px\",border:\"1px solid #e5e7eb\",boxShadow:\"0 2px 4px rgba(0, 0, 0, 0.05)\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"22px\",marginBottom:\"8px\"}}),/*#__PURE__*/_jsx(\"h3\",{style:{fontSize:isMobile?\"16px\":\"18px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 4px 0\"},children:\"E-Mail Best\\xe4tigung\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:\"14px\",color:\"#6b7280\",margin:\"0\",lineHeight:\"1.4\"},children:\"Pr\\xfcfen Sie Ihr Postfach f\\xfcr weitere Details\"})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:isMobile?\"20px\":\"24px\",backgroundColor:\"white\",borderRadius:\"12px\",border:\"1px solid #e5e7eb\",boxShadow:\"0 2px 4px rgba(0, 0, 0, 0.05)\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"22px\",marginBottom:\"8px\"}}),/*#__PURE__*/_jsx(\"h3\",{style:{fontSize:isMobile?\"16px\":\"18px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 4px 0\"},children:\"Schnelle Antwort\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:\"14px\",color:\"#6b7280\",margin:\"0\",lineHeight:\"1.4\"},children:\"R\\xfcckmeldung innerhalb von 24 Stunden\"})]})]}),/*#__PURE__*/_jsx(\"div\",{style:{padding:isMobile?\"16px 20px\":\"20px 24px\",backgroundColor:\"rgba(94, 104, 234, 0.1)\",borderRadius:\"8px\",border:\"1px solid rgba(94, 104, 234, 0.2)\",maxWidth:\"500px\",margin:\"0 auto 32px auto\"},children:/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"14px\":\"16px\",color:colors.primary,margin:\"0\",fontWeight:\"500\",lineHeight:\"1.5\"},children:\"Haben Sie weitere Fragen? Z\\xf6gern Sie nicht, uns direkt zu kontaktieren.\"})}),/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:\"24px\"},children:[/*#__PURE__*/_jsxs(\"button\",{onClick:()=>window.open(\"https://dachsatec.de\",\"_blank\"),style:{padding:isMobile?\"14px 28px\":\"16px 32px\",backgroundColor:\"#5E68EA\",color:\"white\",border:\"none\",borderRadius:\"8px\",fontSize:isMobile?\"16px\":\"18px\",fontWeight:\"600\",cursor:\"pointer\",transition:\"all 0.3s ease\",boxShadow:\"0 4px 12px rgba(94, 104, 234, 0.3)\",display:\"inline-flex\",alignItems:\"center\",gap:\"8px\"},onMouseEnter:e=>{e.target.style.backgroundColor=\"#4f46e5\";e.target.style.transform=\"translateY(-2px)\";e.target.style.boxShadow=\"0 6px 16px rgba(94, 104, 234, 0.4)\";},onMouseLeave:e=>{e.target.style.backgroundColor=\"#5E68EA\";e.target.style.transform=\"translateY(0px)\";e.target.style.boxShadow=\"0 4px 12px rgba(94, 104, 234, 0.3)\";},children:[/*#__PURE__*/_jsx(\"span\",{children:\"Besuchen Sie unsere Website\"}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"14px\"},children:\"\u2192\"})]}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:\"14px\",color:\"#6b7280\",margin:\"16px 0 0 0\",fontStyle:\"italic\"},children:\"Erfahren Sie mehr \\xfcber unsere Dienstleistungen und Projekte\"})]})]})})})]});// Not Available Page Component for Mieter\nconst NotAvailablePage=()=>/*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",top:\"0\",left:\"0\",right:\"0\",zIndex:50,height:\"4px\",backgroundColor:colors.gray[300],boxShadow:`0 0 8px ${colors.gray[300]}40`}}),/*#__PURE__*/_jsx(\"div\",{style:contentContainerStyle,children:/*#__PURE__*/_jsx(\"div\",{style:mainContainerStyle,children:/*#__PURE__*/_jsxs(\"div\",{style:{...cardStyle,textAlign:\"center\",padding:isMobile?\"44px 32px\":\"44px 48px\",background:\"white\",position:\"relative\",overflow:\"hidden\",marginTop:isMobile?\"40px\":\"60px\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"-50px\",right:\"-50px\",width:\"100px\",height:\"100px\",background:`linear-gradient(45deg, ${colors.gray[200]}, ${colors.gray[300]})`,borderRadius:\"50%\",opacity:\"0.1\"}}),/*#__PURE__*/_jsx(\"h1\",{style:{fontSize:isMobile?\"24px\":\"42px\",fontWeight:\"700\",color:\"#111827\",margin:\"0 0 16px 0\",lineHeight:\"1.2\",letterSpacing:\"-0.025em\"},children:\"Entschuldigung\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"18px\":\"22px\",color:\"#374151\",margin:\"0 0 8px 0\",lineHeight:\"1.4\",fontWeight:\"600\"},children:\"Service derzeit nicht verf\\xfcgbar\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"16px\":\"18px\",color:\"#6b7280\",margin:\"0 0 40px 0\",lineHeight:\"1.6\",maxWidth:\"500px\",marginLeft:\"auto\",marginRight:\"auto\"},children:\"Unser Service richtet sich derzeit ausschlie\\xdflich an Hauseigent\\xfcmer, Bautr\\xe4ger und Hausverwaltungen. Als Mieter wenden Sie sich bitte direkt an Ihren Vermieter oder die Hausverwaltung f\\xfcr Dacharbeiten.\"}),/*#__PURE__*/_jsx(\"div\",{style:{marginTop:\"24px\"},children:/*#__PURE__*/_jsxs(\"button\",{onClick:()=>window.open(\"https://dachsatec.de\",\"_blank\"),style:{padding:isMobile?\"16px 28px\":\"18px 36px\",backgroundColor:colors.primary,color:\"white\",border:\"none\",borderRadius:\"12px\",fontSize:isMobile?\"16px\":\"17px\",fontWeight:\"600\",cursor:\"pointer\",transition:\"all 0.3s cubic-bezier(0.4, 0, 0.2, 1)\",boxShadow:`0 10px 15px -3px ${colors.primary}30, 0 4px 6px -2px ${colors.primary}20`,display:\"inline-flex\",alignItems:\"center\",gap:\"8px\",transform:\"translateY(0)\",letterSpacing:\"-0.01em\"},onMouseEnter:e=>{e.target.style.backgroundColor=colors.primaryHover;e.target.style.transform=\"translateY(-3px)\";e.target.style.boxShadow=`0 20px 25px -5px ${colors.primary}40, 0 10px 10px -5px ${colors.primary}30`;},onMouseLeave:e=>{e.target.style.backgroundColor=colors.primary;e.target.style.transform=\"translateY(0px)\";e.target.style.boxShadow=`0 10px 15px -3px ${colors.primary}30, 0 4px 6px -2px ${colors.primary}20`;},children:[/*#__PURE__*/_jsx(\"span\",{children:\"Zur Website\"}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"14px\"},children:\"\u2192\"})]})})]})})})]});// Out of Service Area Page Component\nconst OutOfServiceAreaPage=()=>/*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",top:\"0\",left:\"0\",right:\"0\",zIndex:50,height:\"4px\",backgroundColor:colors.gray[300],boxShadow:`0 0 8px ${colors.gray[300]}40`}}),/*#__PURE__*/_jsx(\"div\",{style:contentContainerStyle,children:/*#__PURE__*/_jsx(\"div\",{style:mainContainerStyle,children:/*#__PURE__*/_jsxs(\"div\",{style:{...cardStyle,textAlign:\"center\",padding:isMobile?\"44px 32px\":\"44px 48px\",background:\"white\",position:\"relative\",overflow:\"hidden\",marginTop:isMobile?\"40px\":\"60px\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"-50px\",right:\"-50px\",width:\"100px\",height:\"100px\",background:`linear-gradient(45deg, ${colors.warning}, ${colors.warningLight})`,borderRadius:\"50%\",opacity:\"0.1\"}}),/*#__PURE__*/_jsx(\"div\",{style:{width:isMobile?\"70px\":\"80px\",height:isMobile?\"70px\":\"80px\",background:`linear-gradient(135deg, ${colors.warning}, #d97706)`,borderRadius:\"50%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",margin:\"0 auto 32px auto\",boxShadow:`0 10px 25px ${colors.warning}30`},children:/*#__PURE__*/_jsx(\"div\",{style:{fontSize:isMobile?\"32px\":\"40px\",color:\"white\"},children:\"\uD83D\uDCCD\"})}),/*#__PURE__*/_jsx(\"h1\",{style:{fontSize:isMobile?\"24px\":\"42px\",fontWeight:\"700\",color:\"#111827\",margin:\"0 0 16px 0\",lineHeight:\"1.2\",letterSpacing:\"-0.025em\"},children:\"Au\\xdferhalb unseres Servicebereichs\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"18px\":\"22px\",color:\"#374151\",margin:\"0 0 8px 0\",lineHeight:\"1.4\",fontWeight:\"600\"},children:\"Leider k\\xf6nnen wir diese Adresse nicht bedienen\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"16px\":\"18px\",color:\"#6b7280\",margin:\"0 0 24px 0\",lineHeight:\"1.6\",maxWidth:\"500px\",marginLeft:\"auto\",marginRight:\"auto\"},children:distanceFromCenter&&/*#__PURE__*/_jsxs(_Fragment,{children:[\"Ihre Adresse liegt\",\" \",/*#__PURE__*/_jsxs(\"strong\",{children:[Math.round(distanceFromCenter),\" km\"]}),\" \",\"von unserem Servicebereich entfernt. Wir bedienen derzeit nur Kunden innerhalb eines Radius von\",\" \",/*#__PURE__*/_jsxs(\"strong\",{children:[serviceRadiusKm,\" km\"]}),\".\"]})}),/*#__PURE__*/_jsx(\"div\",{style:{padding:isMobile?\"16px 20px\":\"20px 24px\",backgroundColor:\"#fef3c7\",borderRadius:\"8px\",border:\"1px solid #fbbf24\",maxWidth:\"500px\",margin:\"0 auto 32px auto\"},children:/*#__PURE__*/_jsx(\"p\",{style:{fontSize:isMobile?\"14px\":\"16px\",color:\"#92400e\",margin:\"0\",fontWeight:\"500\",lineHeight:\"1.5\"},children:\"\uD83D\uDCA1 Tipp: Wir erweitern kontinuierlich unseren Servicebereich. Kontaktieren Sie uns f\\xfcr weitere Informationen.\"})}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:\"16px\",maxWidth:\"400px\",margin:\"0 auto\"},children:/*#__PURE__*/_jsx(\"button\",{onClick:()=>{window.location.href=\"https://dachsatec.de\";},style:{padding:isMobile?\"16px 28px\":\"18px 36px\",backgroundColor:colors.primary,color:\"white\",border:\"none\",borderRadius:\"12px\",fontSize:isMobile?\"16px\":\"17px\",fontWeight:\"600\",cursor:\"pointer\",transition:\"all 0.3s cubic-bezier(0.4, 0, 0.2, 1)\",boxShadow:`0 10px 15px -3px ${colors.primary}30, 0 4px 6px -2px ${colors.primary}20`},onMouseEnter:e=>{e.target.style.backgroundColor=colors.primaryHover;e.target.style.transform=\"translateY(-3px)\";e.target.style.boxShadow=`0 20px 25px -5px ${colors.primary}40, 0 10px 10px -5px ${colors.primary}30`;},onMouseLeave:e=>{e.target.style.backgroundColor=colors.primary;e.target.style.transform=\"translateY(0px)\";e.target.style.boxShadow=`0 10px 15px -3px ${colors.primary}30, 0 4px 6px -2px ${colors.primary}20`;},children:\"Zur\\xfcck zur Startseite\"})})]})})})]});// Google Maps API Loading\nuseEffect(()=>{if(typeof window!==\"undefined\"){const loadGoogleMapsScript=()=>{if(window.google&&window.google.maps){setIsGoogleMapsLoaded(true);return;}const script=document.createElement(\"script\");script.src=`https://maps.googleapis.com/maps/api/js?key=AIzaSyAYgUol72_HZC4aGBGOvTXlcgY92uSmpYY&libraries=places`;script.async=true;script.defer=true;script.onload=()=>setIsGoogleMapsLoaded(true);script.onerror=()=>{console.error(\"Failed to load Google Maps API\");};document.head.appendChild(script);};loadGoogleMapsScript();}},[]);// Initialize Google Maps autocomplete - ENHANCED VERSION WITH MAP DISPLAY\nuseEffect(()=>{if(isGoogleMapsLoaded&&questionFlow[currentStep]===\"address\"&&addressInputRef.current&&!autocompleteRef.current){try{const autocompleteInstance=new window.google.maps.places.Autocomplete(addressInputRef.current,{types:[\"address\"],componentRestrictions:{country:\"de\"},fields:[\"formatted_address\",\"geometry\",\"address_components\",\"place_id\"]});autocompleteRef.current=autocompleteInstance;autocompleteInstance.addListener(\"place_changed\",()=>{const place=autocompleteInstance.getPlace();if(place.formatted_address&&place.geometry&&place.place_id){handleAnswer(\"address\",place.formatted_address);setIsAddressFromGoogle(true);const components=updateAddressComponents(place,\"google_maps\");if(components.latitude&&components.longitude){const distance=calculateDistance(serviceCenterLatitude,serviceCenterLongitude,components.latitude,components.longitude);setDistanceFromCenter(distance);if(distance>serviceRadiusKm){setIsOutOfServiceArea(true);if(showDistanceWarning){setShowServiceAreaWarning(true);}else{return;}}else{setIsOutOfServiceArea(false);setShowServiceAreaWarning(false);setTimeout(()=>{initializeMap(place);},300);setTimeout(()=>{nextStep();},2e3);}}}else{setIsAddressFromGoogle(false);}});console.log(\"Google Maps autocomplete initialized\");}catch(error){console.log(\"Failed to initialize Google Maps autocomplete:\",error);}}// Cleanup when leaving address step\nreturn()=>{if(autocompleteRef.current&&questionFlow[currentStep]!==\"address\"){try{window.google.maps.event.clearInstanceListeners(autocompleteRef.current);}catch(error){console.log(\"Cleanup error:\",error);}autocompleteRef.current=null;mapInstanceRef.current=null;}};},[isGoogleMapsLoaded,currentStep,questionFlow]);// Initialize the Google Map display\nconst initializeMap=place=>{if(!mapRef.current||!place.geometry)return;try{// Create the map with satellite view\nconst map=new window.google.maps.Map(mapRef.current,{center:place.geometry.location,zoom:18,mapTypeId:window.google.maps.MapTypeId.SATELLITE,disableDefaultUI:true,zoomControl:true,zoomControlOptions:{position:window.google.maps.ControlPosition.RIGHT_BOTTOM},mapTypeControl:true,mapTypeControlOptions:{position:window.google.maps.ControlPosition.TOP_RIGHT,style:window.google.maps.MapTypeControlStyle.DROPDOWN_MENU,mapTypeIds:[window.google.maps.MapTypeId.SATELLITE,window.google.maps.MapTypeId.ROADMAP,window.google.maps.MapTypeId.HYBRID]}});// Add a custom marker\nconst marker=new window.google.maps.Marker({position:place.geometry.location,map:map,title:place.formatted_address,icon:{path:window.google.maps.SymbolPath.CIRCLE,scale:12,fillColor:\"#5E68EA\",fillOpacity:1,strokeColor:\"#ffffff\",strokeWeight:3},animation:window.google.maps.Animation.DROP});mapInstanceRef.current=map;// Animate the map container\nif(mapRef.current){mapRef.current.style.height=\"0px\";mapRef.current.style.opacity=\"0\";mapRef.current.style.transform=\"translateY(20px)\";mapRef.current.style.display=\"block\";// Trigger animation\nsetTimeout(()=>{mapRef.current.style.transition=\"all 0.8s cubic-bezier(0.4, 0, 0.2, 1)\";mapRef.current.style.height=isMobile?\"300px\":\"400px\";mapRef.current.style.opacity=\"1\";mapRef.current.style.transform=\"translateY(0px)\";// Resize map after animation\nsetTimeout(()=>{window.google.maps.event.trigger(map,\"resize\");map.setCenter(place.geometry.location);},400);},100);}}catch(error){console.log(\"Failed to initialize map:\",error);}};// Clean up on unmount\nuseEffect(()=>{return()=>{if(autocompleteRef.current){try{window.google.maps.event.clearInstanceListeners(autocompleteRef.current);}catch(error){// Ignore cleanup errors on unmount\n}autocompleteRef.current=null;}if(mapInstanceRef.current){mapInstanceRef.current=null;}};},[]);// Question definitions with improved copy\nconst questions={roofType:{id:\"roofType\",type:\"select\",question:\"Welche Art von Dach ben\\xf6tigt Ihre Aufmerksamkeit?\",//subtitle:\n// \"W\u00E4hlen Sie Ihren Dachtyp f\u00FCr ein ma\u00DFgeschneidertes Angebot\",\noptions:[{value:\"flachdach\",label:\"Flachdach\",description:\"Moderne, flache oder leicht geneigte D\\xe4cher\",icon:\"\",popular:false},{value:\"spitzdach\",label:\"Steildach\",description:\"Klassische, geneigte Dachkonstruktionen\",icon:\"\",popular:false}]},flachdachPvAnlage:{id:\"flachdachPvAnlage\",type:\"single\",question:\"Brauchen Sie eine PV Anlage?\",subtitle:\"Solarenergie f\\xfcr Ihr neues Dach - umweltfreundlich und kostensparend\",options:[{value:\"ja\",label:\"Ja, ich interessiere mich f\\xfcr Solarenergie\"},{value:\"nein\",label:\"Nein, erstmal nur das Dach\"}]},spitzdachPvAnlage:{id:\"spitzdachPvAnlage\",type:\"single\",question:\"Brauchen Sie eine PV Anlage?\",subtitle:\"Solarenergie f\\xfcr Ihr neues Dach - umweltfreundlich und kostensparend\",options:[{value:\"ja\",label:\"Ja, ich interessiere mich f\\xfcr Solarenergie\"},{value:\"nein\",label:\"Nein, erstmal nur das Dach\"}]},flachdachGrundflaeche:{id:\"flachdachGrundflaeche\",type:\"slider\",question:\"Wie gro\\xdf ist die Grundfl\\xe4che Ihres Hauses?\",subtitle:\"Diese Information hilft uns, Ihre Dachfl\\xe4che pr\\xe4zise zu berechnen\",min:1,max:1e3,step:1,unit:\"m\\xb2\"},flachdachService:{id:\"flachdachService\",type:\"single\",question:\"Welche Leistung ben\\xf6tigen Sie?\",subtitle:\"W\\xe4hlen Sie die gew\\xfcnschte Dienstleistung f\\xfcr Ihr Projekt\",options:[{value:\"komplett\",label:\"Komplett neues Dach\",popular:true},{value:\"daemmung\",label:\"Nur Dachd\\xe4mmung\"},{value:\"fenster\",label:\"Nur neue Dachfenster\"},{value:\"begrunung\",label:\"Nur Dachbegr\\xfcnung\"},{value:\"reparatur\",label:\"Nur Reparatur / Abdichtung\"}]},flachdachFenster:{id:\"flachdachFenster\",type:\"single\",question:\"M\\xf6chten Sie Dachfenster oder Lichtkuppeln hinzuf\\xfcgen?\",subtitle:\"Mehr Tageslicht f\\xfcr Ihre R\\xe4ume\",options:[{value:\"ja\",label:\"Ja, ich m\\xf6chte mehr Licht\"},{value:\"nein\",label:\"Nein, nicht erforderlich\"}]},flachdachBegrunung:{id:\"flachdachBegrunung\",type:\"single\",question:\"Interessieren Sie sich f\\xfcr eine Dachbegr\\xfcnung?\",subtitle:\"Umweltfreundlich und energieeffizient\",options:[{value:\"ja\",label:\"Ja, das klingt interessant\"},{value:\"nein\",label:\"Nein, danke\"}]},flachdachDaemmungTyp:{id:\"flachdachDaemmungTyp\",type:\"single\",question:\"Welche D\\xe4mmqualit\\xe4t bevorzugen Sie?\",subtitle:\"Investieren Sie in langfristige Energieeinsparungen\",options:[{value:\"untersparrendaemmung\",label:\"Untersparrend\\xe4mmung - Grundausstattung\",description:\"\u2022 Einfache Installation unter der Konstruktion\\n\u2022 Kosteng\\xfcnstige L\\xf6sung f\\xfcr kleinere Budgets\",yearlyEuroSavings:400},{value:\"zwischensparrendaemmung\",label:\"Zwischensparrend\\xe4mmung - Bew\\xe4hrt\",description:\"\u2022 Optimales Preis-Leistungs-Verh\\xe4ltnis\\n\u2022 Reduzierte W\\xe4rmebr\\xfccken f\\xfcr bessere Effizienz\",yearlyEuroSavings:750},{value:\"aufsparrendaemmung\",label:\"Aufsparrend\\xe4mmung - Premium L\\xf6sung\",description:\"\u2022 Keine W\\xe4rmebr\\xfccken - beste D\\xe4mmwerte m\\xf6glich\\n\u2022 H\\xf6chste Energieeinsparung und langfristigster Werterhalt\",yearlyEuroSavings:1200}]},flachdachFensterTyp:{id:\"flachdachFensterTyp\",type:\"single\",question:\"Planen Sie neue oder bestehende Fenster?\",options:[{value:\"neu\",label:\"Neue Fenster installieren\"},{value:\"bestehend\",label:\"Bestehende Fenster erneuern\"}]},flachdachFensterGroesse:{id:\"flachdachFensterGroesse\",type:\"single\",question:\"Welche Fenstergr\\xf6\\xdfe bevorzugen Sie?\",subtitle:\"Gr\\xf6\\xdfere Fenster bedeuten mehr Licht und bessere Raumwirkung\",options:[{value:\"klein\",label:\"Klein (78x98 cm) - Kompakt\"},{value:\"mittel\",label:\"Mittel (94x118 cm) - Beliebt\",popular:false},{value:\"gross\",label:\"Gro\\xdf (114x140 cm) - Maximum Licht\"}]},flachdachFensterAnzahl:{id:\"flachdachFensterAnzahl\",type:\"slider\",question:\"Wie viele Fenster sollen installiert werden?\",min:1,max:10,step:1,unit:\"St\\xfcck\"},flachdachBegrunungFlaeche:{id:\"flachdachBegrunungFlaeche\",type:\"slider\",question:\"Welcher Anteil soll begr\\xfcnt werden?\",subtitle:\"Je mehr Begr\\xfcnung, desto gr\\xf6\\xdfer die Umweltvorteile\",min:0,max:100,step:5,unit:\"%\",default:100},flachdachReparaturArt:{id:\"flachdachReparaturArt\",type:\"multiple\",question:\"Welche Reparaturen sind erforderlich?\",subtitle:\"Mehrfachauswahl m\\xf6glich\",options:[{value:\"ausbessern\",label:\"Vereinzelte Ausbesserungen\"},{value:\"undicht\",label:\"Undichtigkeiten beheben\"}]},spitzdachGrundflaeche:{id:\"spitzdachGrundflaeche\",type:\"slider\",question:\"Wie gro\\xdf ist die Grundfl\\xe4che Ihres Hauses?\",min:1,max:1e3,step:1,unit:\"m\\xb2\"},spitzdachNeigung:{id:\"spitzdachNeigung\",type:\"single\",question:\"Wie steil ist Ihr Dach?\",subtitle:\"Die Dachneigung beeinflusst Material und Arbeitsaufwand\",options:[{value:\"unter22\",label:\"Unter 22\\xb0 - Flach geneigt\"},{value:\"22-40\",label:\"22-40\\xb0 - Standard\",popular:false},{value:\"40-60\",label:\"40-60\\xb0 - Steil\"},{value:\"ueber60\",label:\"\\xdcber 60\\xb0 - Sehr steil\"}]},spitzdachForm:{id:\"spitzdachForm\",type:\"single\",question:\"Welche Dachform hat Ihr Haus?\",subtitle:\"Die Form bestimmt Komplexit\\xe4t und Preis\",options:[{value:\"satteldach\",label:\"Satteldach\",popular:false},{value:\"walmdach\",label:\"Walmdach\"},{value:\"pultdach\",label:\"Pultdach\"},{value:\"krueppelwalmdach\",label:\"Kr\\xfcppelwalmdach\"}]},spitzdachService:{id:\"spitzdachService\",type:\"single\",question:\"Welche Leistung ben\\xf6tigen Sie?\",options:[{value:\"komplett\",label:\"Komplettes Dach neu decken\",popular:true},{value:\"daemmung\",label:\"Nur Dachd\\xe4mmung\"},{value:\"fenster\",label:\"Nur neue Dachfenster\"},{value:\"gauben\",label:\"Nur Gauben\"},{value:\"dachrinnen\",label:\"Nur neue Dachrinnen\"},{value:\"reparatur\",label:\"Nur Reparatur / Abdichtung\"}]},spitzdachKomplettFenster:{id:\"spitzdachKomplettFenster\",type:\"single\",question:\"Sollen Dachfenster in Ihr neues Steildach integriert werden?\",subtitle:\"Mehr Licht und Wohnqualit\\xe4t\",options:[{value:\"ja\",label:\"Ja, Dachfenster gew\\xfcnscht\"},{value:\"nein\",label:\"Nein, nicht erforderlich\"}]},spitzdachKomplettGaube:{id:\"spitzdachKomplettGaube\",type:\"single\",question:\"M\\xf6chten Sie eine Gaube hinzuf\\xfcgen?\",subtitle:\"Erweitern Sie Ihren Wohnraum im Dachgeschoss\",options:[{value:\"ja\",label:\"Ja, Gaube gew\\xfcnscht\"},{value:\"nein\",label:\"Nein, nicht geplant\"}]},spitzdachDaemmungTyp:{id:\"spitzdachDaemmungTyp\",type:\"single\",question:\"Welche D\\xe4mmqualit\\xe4t bevorzugen Sie?\",subtitle:\"Investieren Sie in langfristige Energieeinsparungen\",options:[{value:\"untersparrendaemmung\",label:\"Untersparrend\\xe4mmung - Grundausstattung\",description:\"\u2022 Einfache Installation unter der Konstruktion\\n\u2022 Kosteng\\xfcnstige L\\xf6sung f\\xfcr kleinere Budgets\",yearlyEuroSavings:400},{value:\"zwischensparrendaemmung\",label:\"Zwischensparrend\\xe4mmung - Bew\\xe4hrt\",description:\"\u2022 Optimales Preis-Leistungs-Verh\\xe4ltnis\\n\u2022 Reduzierte W\\xe4rmebr\\xfccken f\\xfcr bessere Effizienz\",yearlyEuroSavings:750},{value:\"aufsparrendaemmung\",label:\"Aufsparrend\\xe4mmung - Premium L\\xf6sung\",description:\"\u2022 Keine W\\xe4rmebr\\xfccken - beste D\\xe4mmwerte m\\xf6glich\\n\u2022 H\\xf6chste Energieeinsparung und langfristigster Werterhalt\",yearlyEuroSavings:1200}]},spitzdachFensterTyp:{id:\"spitzdachFensterTyp\",type:\"single\",question:\"Neue oder bestehende Fenster?\",options:[{value:\"neu\",label:\"Neue Fenster installieren\"},{value:\"bestehend\",label:\"Bestehende Fenster erneuern\"}]},spitzdachGaubenTyp:{id:\"spitzdachGaubenTyp\",type:\"single\",question:\"Neue oder bestehende Gaube?\",options:[{value:\"neu\",label:\"Neue Gaube bauen\"},{value:\"bestehend\",label:\"Bestehende Gaube erneuern\"}]},spitzdachGaubenAnzahl:{id:\"spitzdachGaubenAnzahl\",type:\"slider\",question:\"Wie viele Gauben?\",min:1,max:10,step:1,unit:\"St\\xfcck\"},spitzdachRinnenMaterial:{id:\"spitzdachRinnenMaterial\",type:\"single\",question:\"Welches Rinnenmaterial bevorzugen Sie?\",subtitle:\"Langlebigkeit und Optik variieren je nach Material\",options:[{value:\"standard\",label:\"Standard - Titanzink\",popular:false},{value:\"premium\",label:\"Premium - Titanzink vorbewittert\"},{value:\"kupfer\",label:\"Exklusiv - Kupfer (langlebigste Option)\"}]},spitzdachReparaturArt:{id:\"spitzdachReparaturArt\",type:\"multiple\",question:\"Welche Reparaturen sind n\\xf6tig?\",options:[{value:\"ziegel\",label:\"Einzelne Dachziegel austauschen\"},{value:\"undicht\",label:\"Undichtigkeiten beheben\"}]},steildachFensterTyp:{id:\"steildachFensterTyp\",type:\"single\",question:\"Neue oder bestehende Fenster?\",options:[{value:\"neu\",label:\"Neue Fenster\"},{value:\"bestehend\",label:\"Bestehende Fenster\"}]},steildachFensterGroesse:{id:\"steildachFensterGroesse\",type:\"single\",question:\"Welche Fenstergr\\xf6\\xdfe?\",options:[{value:\"klein\",label:\"Klein (78x98 cm)\"},{value:\"mittel\",label:\"Mittel (94x118 cm)\",popular:false},{value:\"gross\",label:\"Gro\\xdf (114x140 cm)\"}]},steildachFensterAnzahl:{id:\"steildachFensterAnzahl\",type:\"slider\",question:\"Anzahl der Fenster?\",min:1,max:10,step:1,unit:\"St\\xfcck\"},steildachGaubenTyp:{id:\"steildachGaubenTyp\",type:\"single\",question:\"Neue oder bestehende Gaube?\",options:[{value:\"neu\",label:\"Neue Gaube\"},{value:\"bestehend\",label:\"Bestehende Gaube\"}]},steildachGaubenAnzahl:{id:\"steildachGaubenAnzahl\",type:\"slider\",question:\"Anzahl der Gauben?\",min:1,max:10,step:1,unit:\"St\\xfcck\"},eigentuemer:{id:\"eigentuemer\",type:\"single\",question:\"In welcher Rolle handeln Sie?\",subtitle:\"Dies hilft uns bei der passenden Angebotserstellung\",options:[{value:\"eigentuemer\",label:\"Hauseigent\\xfcmer\",popular:false},{value:\"mieter\",label:\"Mieter\"},{value:\"hausverwaltung\",label:\"Bautr\\xe4ger / Hausverwaltung\"}]},zeitrahmen:{id:\"zeitrahmen\",type:\"single\",question:\"Wann soll das Projekt umgesetzt werden?\",subtitle:\"Fr\\xfchere Termine erhalten Priorit\\xe4t in der Planung\",options:[{value:\"schnellstmoeglich\",label:\"So schnell wie m\\xf6glich\",popular:false},{value:\"1-3monate\",label:\"In 1-3 Monaten\"},{value:\"4-7monate\",label:\"Sp\\xe4ter (flexibel)\"}]},address:{id:\"address\",type:\"address\",question:\"Wo befindet sich Ihr Haus?\",subtitle:\"\",placeholder:\"Stra\\xdfe, Hausnummer, PLZ, Ort eingeben...\"},name:{id:\"name\",type:\"dual-input\",question:\"An wen soll das Angebot gerichtet werden?\",subtitle:\"\",fields:[{id:\"vorname\",placeholder:\"Vorname\",label:\"Vorname\"},{id:\"nachname\",placeholder:\"Nachname\",label:\"Nachname\"}]},email:{id:\"email\",type:\"input\",question:\"Wohin senden wir Ihr kostenloses Angebot?\",subtitle:\"\",placeholder:\"ihre.email@beispiel.de\",inputType:\"email\"},phone:{id:\"phone\",type:\"input\",question:\"Ihre Telefonnummer f\\xfcr R\\xfcckfragen\",subtitle:\"\",placeholder:\"+49\",inputType:\"tel\"}};// Question flow generation logic\nconst generateQuestionFlow=()=>{let flow=[\"roofType\"];const roofType=answers.roofType;if(roofType===\"flachdach\"){flow.push(\"flachdachService\");const service=answers.flachdachService;if(service===\"komplett\"){flow.push(\"flachdachFenster\");if(answers.flachdachFenster===\"ja\"){flow.push(\"flachdachFensterAnzahl\",\"flachdachFensterGroesse\");}flow.push(\"flachdachBegrunung\");if(answers.flachdachBegrunung===\"ja\"){//flow.push(\"flachdachBegrunungFlaeche\")\n}}else if(service===\"daemmung\"){flow.push(\"flachdachDaemmungTyp\");}else if(service===\"fenster\"){flow.push(\"flachdachFensterTyp\",\"flachdachFensterAnzahl\",\"flachdachFensterGroesse\");}else if(service===\"begrunung\"){// flow.push(\"flachdachBegrunungFlaeche\")\n}else if(service===\"reparatur\"){flow.push(\"flachdachReparaturArt\");}flow.push(\"flachdachGrundflaeche\");}else if(roofType===\"spitzdach\"){flow.push(\"spitzdachService\");const service=answers.spitzdachService;if(service===\"komplett\"){flow.push(\"spitzdachKomplettFenster\");if(answers.spitzdachKomplettFenster===\"ja\"){flow.push(\"steildachFensterAnzahl\",\"steildachFensterGroesse\");}flow.push(\"spitzdachKomplettGaube\");if(answers.spitzdachKomplettGaube===\"ja\"){flow.push(\"steildachGaubenAnzahl\");}}else if(service===\"daemmung\"){flow.push(\"spitzdachDaemmungTyp\");}else if(service===\"fenster\"){flow.push(\"spitzdachFensterTyp\",\"steildachFensterAnzahl\",\"steildachFensterGroesse\");}else if(service===\"gauben\"){flow.push(\"spitzdachGaubenTyp\",\"spitzdachGaubenAnzahl\");}else if(service===\"dachrinnen\"){flow.push(\"spitzdachRinnenMaterial\");}else if(service===\"reparatur\"){flow.push(\"spitzdachReparaturArt\");}flow.push(\"spitzdachGrundflaeche\",\"spitzdachNeigung\",\"spitzdachForm\");}// Add PV anlage question for complete roof replacements only\nif(roofType===\"flachdach\"&&answers.flachdachService===\"komplett\"){flow.push(\"flachdachPvAnlage\");}else if(roofType===\"spitzdach\"&&answers.spitzdachService===\"komplett\"){flow.push(\"spitzdachPvAnlage\");}flow.push(\"zeitrahmen\",\"eigentuemer\",\"address\",\"name\",\"email\",\"phone\");return flow;};// Update flow when answers change\nuseEffect(()=>{const newFlow=generateQuestionFlow();setQuestionFlow(newFlow);setTotalSteps(newFlow.length);},[answers]);// Auto-set slider defaults\nuseEffect(()=>{const currentQuestionId=questionFlow[currentStep];if(currentQuestionId&&questions[currentQuestionId]){const question=questions[currentQuestionId];if(question.type===\"slider\"&&answers[currentQuestionId]===undefined){const defaultValue=question.default||question.min;setTimeout(()=>{setAnswers(prev=>({...prev,[currentQuestionId]:defaultValue}));},0);}}},[currentStep,questionFlow]);// REPLACE your existing handleAnswer function with this:\nconst handleAnswer=(questionId,value)=>{setAnswers(prev=>({...prev,[questionId]:value}));// Track the question interaction\nconst question=questions[questionId];if(question){trackQuestionInteraction(questionId,question.type,value);}if(questionId===\"eigentuemer\"&&value===\"mieter\"){setIsMieterSelected(true);}};// REPLACE your existing nextStep function with this:\nconst nextStep=()=>{if(currentStep<questionFlow.length-1){const currentQuestionId=questionFlow[currentStep];const answer=answers[currentQuestionId];// Track the progression\ntrackStepProgression(currentStep,currentStep+1,currentQuestionId,answer);setCurrentStep(currentStep+1);// Instantly scroll to top for new question\nwindow.scrollTo({top:0,behavior:\"instant\"});}};const prevStep=()=>{if(currentStep>minStep){setCurrentStep(currentStep-1);// Instantly scroll to top for previous question\nwindow.scrollTo({top:0,behavior:\"instant\"});}};// Step validation\nconst isStepValid=()=>{const currentQuestionId=questionFlow[currentStep];const answer=answers[currentQuestionId];if(!currentQuestionId)return false;const question=questions[currentQuestionId];if(question.type===\"slider\")return true;if(question.type===\"multiple\"){return answer&&answer.length>0;}if(question.type===\"dual-input\"){return answer&&answer.vorname&&answer.nachname&&answer.vorname.trim()!==\"\"&&answer.nachname.trim()!==\"\";}if(question.inputType===\"email\"&&answer){const emailRegex=/^[^\\s@]+@[^\\s@]+$/;return emailRegex.test(answer.trim());}if(question.inputType===\"tel\"&&answer){return validatePhoneNumber(answer.trim());}// STRICT: Address must be from Google Maps\nif(question.type===\"address\"){return answer&&answer.trim()!==\"\"&&isAddressFromGoogle;}return answer!==undefined&&answer!==\"\";};// Form submission\n// Form submission with UTM tracking\n// Form submission with UTM tracking - FIXED VERSION\nconst handleSubmit=async()=>{setIsSubmitting(true);const submitToWebhook=async(data,retryCount=0)=>{const maxRetries=3;const webhookUrl=\"https://handlyde.app.n8n.cloud/webhook/be035f81-005b-474a-98e0-1f8ccb3dd0f8\";try{console.log(`Attempting submission ${retryCount+1}/${maxRetries+1}:`,data);const response=await fetch(webhookUrl,{method:\"POST\",headers:{\"Content-Type\":\"application/json\",Accept:\"application/json\",\"User-Agent\":\"RoofLeadForm/1.0\"},body:JSON.stringify(data),signal:AbortSignal.timeout?AbortSignal.timeout(3e4):undefined});console.log(\"Response status:\",response.status);console.log(\"Response headers:\",Object.fromEntries(response.headers.entries()));if(response.ok){const responseText=await response.text();console.log(\"Success response:\",responseText);return{success:true,data:responseText};}else{throw new Error(`HTTP ${response.status}: ${response.statusText}`);}}catch(error){console.error(`Submission attempt ${retryCount+1} failed:`,error);if(retryCount<maxRetries){const delay=Math.min(1e3*Math.pow(2,retryCount),5e3);console.log(`Retrying in ${delay}ms...`);await new Promise(resolve=>setTimeout(resolve,delay));return submitToWebhook(data,retryCount+1);}else{throw error;}}};try{const formattedAnswers={...answers};if(formattedAnswers.name){formattedAnswers.vorname=formattedAnswers.name.vorname;formattedAnswers.nachname=formattedAnswers.name.nachname;delete formattedAnswers.name;}// Apply service override if provided\nif(serviceOverride&&serviceOverride!==\"none\"){// Override the service fields based on roof type\nif(formattedAnswers.roofType===\"flachdach\"){formattedAnswers.flachdachService=serviceOverride;}else if(formattedAnswers.roofType===\"spitzdach\"){formattedAnswers.spitzdachService=serviceOverride;}}// Enhanced submission data with UTM tracking and parsed address\nconst submissionData={// Form data\n...formattedAnswers,serviceOverride:serviceOverride||\"none\",// PARSED ADDRESS COMPONENTS - Much better for analysis!\naddress_street_name:addressComponents.street_name,address_house_number:addressComponents.house_number,address_postal_code:addressComponents.postal_code,address_city:addressComponents.city,address_state:addressComponents.state,address_country:addressComponents.country,address_formatted:addressComponents.formatted_address,address_source:addressComponents.address_source,address_latitude:addressComponents.latitude,address_longitude:addressComponents.longitude,address_place_id:addressComponents.place_id,// Add this after the other data in submissionData\nphone_type:detectPhoneType(formattedAnswers.phone),phone_formatted:formattedAnswers.phone,phone_is_mobile:detectPhoneType(formattedAnswers.phone)===\"mobile\",phone_is_landline:detectPhoneType(formattedAnswers.phone)===\"landline\",// UTM Parameters - Facebook Ads Tracking\nutm_source:utmParams.utm_source||null,utm_medium:utmParams.utm_medium||null,utm_campaign:utmParams.utm_campaign||null,utm_content:utmParams.utm_content||null,utm_term:utmParams.utm_term||null,utm_id:utmParams.utm_id||null,// Traffic Source & Referrer Data\nreferrer_url:referrerInfo.url||null,landing_page:referrerInfo.landingPage||(typeof window!==\"undefined\"?window.location.href:null),session_id:referrerInfo.sessionId,// Facebook Specific Tracking\nfacebook_click_id:referrerInfo.facebook_click_id||null,facebook_pixel_enabled:typeof window!==\"undefined\"&&window.fbq?true:false,// Technical & Meta Data\ntimestamp:new Date().toISOString(),source:\"roof-lead-form\",userAgent:typeof window!==\"undefined\"?navigator.userAgent:null,url:typeof window!==\"undefined\"?window.location.href:null,formVersion:\"1.0\",webhookId,// Additional tracking for analytics\npage_title:typeof document!==\"undefined\"?document.title:null,screen_resolution:typeof window!==\"undefined\"?`${window.screen.width}x${window.screen.height}`:null,viewport_size:typeof window!==\"undefined\"?`${window.innerWidth}x${window.innerHeight}`:null,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,language:typeof navigator!==\"undefined\"?navigator.language:null};// Fire Facebook Pixel Lead event if available\nif(typeof window!==\"undefined\"&&window.fbq){try{window.fbq(\"track\",\"Lead\",{content_name:\"Dach Lead Form Completed\",content_category:\"lead_generation\",value:1,currency:\"EUR\",source:utmParams.utm_source||\"unknown\"});console.log(\"Facebook Pixel Lead event fired\");}catch(fbError){console.log(\"Facebook Pixel error:\",fbError);}}// Fire Google Analytics event if available\nif(typeof window!==\"undefined\"&&window.gtag){try{window.gtag(\"event\",\"generate_lead\",{event_category:\"engagement\",event_label:\"roof_lead_form\",value:1,utm_source:utmParams.utm_source,utm_campaign:utmParams.utm_campaign});console.log(\"Google Analytics Lead event fired\");}catch(gaError){console.log(\"Google Analytics error:\",gaError);}}// \u2705 SINGLE WEBHOOK CALL - Submit the main data\nconst result=await submitToWebhook(submissionData);if(result.success){console.log(\"Form submitted successfully with UTM tracking!\");// Track completion\ntrackFormCompletion(formattedAnswers);// Clear localStorage after successful submission\nif(typeof window!==\"undefined\"){localStorage.removeItem(STORAGE_KEY);}// Redirect to thank you page\nwindow.location.href=thankYouUrl;}else{throw new Error(\"Submission failed after all retries\");}}catch(error){console.log(\"Submission might have failed, but redirecting anyway:\",error);// Don't show any error - just redirect\nwindow.location.href=thankYouUrl;}finally{setIsSubmitting(false)// Important: Keep this!\n;}};useEffect(()=>{const handleGlobalKeyDown=e=>{// Only handle Enter key\nif(e.key!==\"Enter\")return;// Don't interfere if user is typing in an input\nif(e.target.tagName===\"INPUT\"||e.target.tagName===\"TEXTAREA\"){return;// Let input-specific handlers deal with this\n}// Prevent default form submission\ne.preventDefault();// Check if current step is valid\nif(!isStepValid())return;// Calculate isLastStep here since it's not a state variable\nconst isLastStep=currentStep===questionFlow.length-1;// Submit or go to next step\nif(isLastStep){if(!isSubmitting){handleSubmit();}}else{nextStep();}};// Add event listener\ndocument.addEventListener(\"keydown\",handleGlobalKeyDown);// Cleanup\nreturn()=>{document.removeEventListener(\"keydown\",handleGlobalKeyDown);};},[currentStep,questionFlow.length,isSubmitting,answers])// Updated dependencies\n;if(isOutOfServiceArea){return /*#__PURE__*/_jsx(OutOfServiceAreaPage,{});}if(isMieterSelected){return /*#__PURE__*/_jsx(NotAvailablePage,{});}if(!isReady){return /*#__PURE__*/_jsx(\"div\",{style:{textAlign:\"center\",paddingTop:\"50vh\",fontSize:\"20px\",color:colors.gray[500]},children:\"Formular wird geladen...\"});}const progress=totalSteps>0?Math.round((currentStep+1)/totalSteps*100):0;// Clean question rendering with better visuals\nconst renderQuestion=()=>{const currentQuestionId=questionFlow[currentStep];if(!currentQuestionId)return null;const question=questions[currentQuestionId];if(!question){console.error(`Question not found for ID: ${currentQuestionId}`);return null;}const answer=answers[currentQuestionId];const hasImages=questionImages[currentQuestionId];switch(question.type){case\"select\":return /*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",marginBottom:isMobile?\"48px\":\"64px\"},children:[/*#__PURE__*/_jsx(\"h1\",{style:{fontSize:isMobile?\"22px\":\"42px\",fontWeight:\"700\",color:\"#0f172a\",margin:\"0 0 16px 0\",lineHeight:\"1.1\",letterSpacing:\"-0.025em\"},children:question.question}),question.subtitle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#64748b\",fontSize:isMobile?\"16px\":\"20px\",margin:\"0\",fontWeight:\"400\",lineHeight:\"1.5\",letterSpacing:\"-0.01em\"},children:question.subtitle})]}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"grid\",gridTemplateColumns:isMobile?\"1fr\":\"1fr 1fr\",gap:isMobile?\"20px\":\"32px\",maxWidth:\"700px\",margin:\"0 auto\"},children:question.options.map((option,index)=>{const optionImage=hasImages?questionImages[currentQuestionId][option.value]:null;const isSelected=answer===option.value;return /*#__PURE__*/_jsxs(\"button\",{onClick:()=>{handleAnswer(currentQuestionId,option.value);setTimeout(nextStep,300);},style:{padding:\"0\",borderRadius:\"20px\",border:isSelected?`2px solid ${colors.primary}`:`2px solid transparent`,backgroundColor:\"white\",textAlign:\"left\",cursor:\"pointer\",transition:\"all 0.3s cubic-bezier(0.4, 0, 0.2, 1)\",width:\"100%\",boxShadow:isSelected?`0 20px 25px -5px ${colors.primary}15, 0 10px 10px -5px ${colors.primary}10`:\"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)\",overflow:\"hidden\",display:\"flex\",flexDirection:\"column\",transform:isSelected?\"translateY(-4px)\":\"translateY(0)\",position:\"relative\",animation:`fadeInScale 0.6s cubic-bezier(0.4, 0, 0.2, 1) ${index*150}ms both`},onMouseEnter:e=>{if(!isSelected){e.currentTarget.style.transform=\"translateY(-2px)\";e.currentTarget.style.boxShadow=\"0 20px 25px -5px rgba(0, 0, 0, 0.15), 0 10px 10px -5px rgba(0, 0, 0, 0.1)\";}},onMouseLeave:e=>{if(!isSelected){e.currentTarget.style.transform=\"translateY(0)\";e.currentTarget.style.boxShadow=\"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)\";}},children:[option.popular&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"12px\",right:\"12px\",background:`linear-gradient(135deg, ${colors.warning}, #d97706)`,color:\"white\",padding:\"4px 8px\",borderRadius:\"6px\",fontSize:\"11px\",fontWeight:\"600\",zIndex:2,boxShadow:`0 2px 8px ${colors.warning}40`,animation:\"pulse 2s infinite\"},children:\"BELIEBT\"}),optionImage&&/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:isMobile?\"120px\":\"210px\",overflow:\"hidden\",position:\"relative\"},children:[/*#__PURE__*/_jsx(\"img\",{src:optionImage,alt:option.label,style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}}),isSelected&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"16px\",right:\"16px\",width:\"32px\",height:\"32px\",backgroundColor:colors.primary,borderRadius:\"50%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",boxShadow:\"0 4px 12px rgba(94, 104, 234, 0.4)\",animation:\"successBounce 0.6s ease-out\"},children:/*#__PURE__*/_jsx(\"div\",{style:{color:\"white\",fontSize:\"18px\",fontWeight:\"bold\"},children:\"\u2713\"})})]}),/*#__PURE__*/_jsx(\"div\",{style:{padding:isMobile?\"24px\":\"32px\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"16px\"},children:[!optionImage&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:isMobile?\"24px\":\"48px\",lineHeight:\"1\",flexShrink:0},children:option.icon}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1},children:[/*#__PURE__*/_jsx(\"h3\",{style:{fontSize:isMobile?\"16px\":\"22px\",fontWeight:\"600\",color:\"#64748b\",margin:\"0 0 8px 0\",transition:\"color 0.3s ease\",letterSpacing:\"-0.01em\"},children:option.label}),/*#__PURE__*/_jsx(\"p\",{style:{color:\"#64748b\",fontSize:isMobile?\"14px\":\"16px\",margin:\"0\",fontWeight:\"400\",lineHeight:\"1.5\",transition:\"color 0.3s ease\"},children:option.description&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"12px\",color:\"#111827\",marginTop:\"6px\",lineHeight:\"1.4\",whiteSpace:\"pre-line\"},children:option.description})})]})]})})]},option.value);})})]});case\"single\":// Check if this is a daemmung question for full-width image treatment\nconst isDaemmungQuestion=currentQuestionId===\"flachdachDaemmungTyp\"||currentQuestionId===\"spitzdachDaemmungTyp\";return /*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:\"500px\",margin:\"0 auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",marginBottom:isMobile?\"24px\":\"32px\"},children:[/*#__PURE__*/_jsx(\"h2\",{style:{fontSize:isMobile?\"16px\":\"28px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 8px 0\",lineHeight:\"1.3\"},children:question.question}),question.subtitle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:isMobile?\"14px\":\"16px\",margin:\"0\",fontWeight:\"400\"},children:question.subtitle})]}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:\"12px\"},children:question.options.map((option,index)=>{const optionImage=hasImages?questionImages[currentQuestionId][option.value]:null;const isSelected=answer===option.value;return /*#__PURE__*/_jsxs(\"button\",{onClick:()=>{handleAnswer(currentQuestionId,option.value);setTimeout(nextStep,150);},style:{width:\"100%\",padding:\"0\",borderRadius:\"8px\",border:isSelected?`2px solid ${colors.primary}`:\"1px solid #e5e7eb\",backgroundColor:isSelected?colors.primaryLight:\"white\",textAlign:\"left\",cursor:\"pointer\",transition:\"all 0.2s ease\",fontSize:isMobile?\"15px\":\"16px\",fontWeight:\"500\",color:\"#111827\",display:\"flex\",flexDirection:\"row\",alignItems:\"stretch\",gap:\"0\",minHeight:optionImage?isDaemmungQuestion?isMobile?\"65px\":\"90px\"// Even slimmer on mobile without bullet points\n:isMobile?\"80px\":\"100px\"// Original height for other images\n:\"auto\",overflow:\"hidden\",boxShadow:isSelected?\"0 4px 8px rgba(94, 104, 234, 0.1)\":\"0 1px 2px rgba(0, 0, 0, 0.05)\",position:\"relative\"},onMouseEnter:e=>{if(!isSelected){e.currentTarget.style.backgroundColor=\"#f9fafb\";e.currentTarget.style.borderColor=\"#9ca3af\";}},onMouseLeave:e=>{if(!isSelected){e.currentTarget.style.backgroundColor=\"white\";e.currentTarget.style.borderColor=\"#e5e7eb\";}},children:[option.popular&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"6px\",right:\"6px\",background:\"#f59e0b\",color:\"white\",padding:\"2px 6px\",borderRadius:\"4px\",fontSize:\"9px\",fontWeight:\"600\",zIndex:2},children:\"BELIEBT\"}),optionImage&&/*#__PURE__*/_jsxs(\"div\",{style:{width:isDaemmungQuestion?isMobile?\"90px\":\"120px\":isMobile?\"80px\":\"100px\",height:\"100%\",flex:\"0 0 auto\",flexShrink:0,overflow:\"hidden\",display:\"flex\",alignItems:\"stretch\",position:\"relative\",// Remove any margins that might prevent full height\nmargin:0,// Ensure it goes from top to bottom\nalignSelf:\"stretch\"},children:[/*#__PURE__*/_jsx(\"img\",{src:optionImage,alt:option.label,style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\",// Remove any default margins/padding\nmargin:0,padding:0}}),isDaemmungQuestion&&isSelected&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"16px\",right:\"16px\",width:\"32px\",height:\"32px\",backgroundColor:\"#5E68EA\",borderRadius:\"50%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",boxShadow:\"0 4px 12px rgba(94, 104, 234, 0.4)\",animation:\"successBounce 0.6s ease-out\",zIndex:10},children:/*#__PURE__*/_jsx(\"div\",{style:{color:\"white\",fontSize:\"18px\",fontWeight:\"bold\"},children:\"\u2713\"})})]}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,padding:isDaemmungQuestion&&isMobile?\"10px 12px\":isMobile?\"12px\":\"14px\",display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",// Ensure proper alignment for daemmung questions\nalignSelf:\"stretch\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{flex:1},children:[/*#__PURE__*/_jsx(\"div\",{children:option.label}),option.description&&!isMobile&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"12px\",color:isSelected?colors.primary:\"#111827\",marginTop:\"6px\",lineHeight:\"1.4\",whiteSpace:\"pre-line\"},children:option.description}),option.yearlyEuroSavings&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"12px\",color:\"#10b981\",fontWeight:\"600\",marginTop:\"4px\",display:\"flex\",alignItems:\"center\",gap:\"4px\"},children:/*#__PURE__*/_jsxs(\"span\",{children:[\"~\",option.yearlyEuroSavings,\"\u20AC/Jahr sparen\"]})})]}),option.energyRating&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",marginLeft:\"12px\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"end\",gap:\"2px\",height:\"16px\"},children:[1,2,3,4,5].map(bar=>/*#__PURE__*/_jsx(\"div\",{style:{width:\"3px\",height:`${bar*3+1}px`,backgroundColor:bar<=option.energyBars?option.energyBars>=4?\"#10b981\":option.energyBars>=3?\"#f59e0b\":\"#ef4444\":\"#e5e7eb\",borderRadius:\"1px\",transition:\"background-color 0.3s ease\"}},bar))}),/*#__PURE__*/_jsx(\"div\",{style:{backgroundColor:option.energyBars>=4?\"#10b981\":option.energyBars>=3?\"#f59e0b\":\"#ef4444\",color:\"white\",padding:\"2px 6px\",borderRadius:\"4px\",fontSize:\"10px\",fontWeight:\"600\",minWidth:\"24px\",textAlign:\"center\"},children:option.energyRating})]})]})]},option.value);})})]});case\"multiple\":return /*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:\"500px\",margin:\"0 auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",marginBottom:isMobile?\"24px\":\"32px\"},children:[/*#__PURE__*/_jsx(\"h2\",{style:{fontSize:isMobile?\"16px\":\"28px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 8px 0\",lineHeight:\"1.3\"},children:question.question}),question.subtitle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:isMobile?\"13px\":\"16px\",margin:\"0\",fontWeight:\"400\"},children:question.subtitle})]}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:\"12px\"},children:question.options.map(option=>{const optionImage=hasImages?questionImages[currentQuestionId][option.value]:null;const isChecked=answer&&answer.includes(option.value);return /*#__PURE__*/_jsxs(\"label\",{style:{display:\"flex\",alignItems:hasImages?\"stretch\":\"center\",width:\"100%\",padding:\"0\",borderRadius:\"8px\",border:isChecked?`2px solid ${colors.primary}`:`1px solid ${colors.primaryLight}`,backgroundColor:isChecked?colors.primaryLight:\"white\",cursor:\"pointer\",transition:\"all 0.2s ease\",boxShadow:isChecked?\"0 4px 8px rgba(94, 104, 234, 0.1)\":\"0 1px 2px rgba(0, 0, 0, 0.05)\",overflow:\"hidden\",minHeight:optionImage?isMobile?\"80px\":\"100px\":\"auto\"},onMouseEnter:e=>{if(!isChecked){e.currentTarget.style.backgroundColor=\"#f9fafb\";e.currentTarget.style.borderColor=\"#9ca3af\";}},onMouseLeave:e=>{if(!isChecked){e.currentTarget.style.backgroundColor=\"white\";e.currentTarget.style.borderColor=\"#e5e7eb\";}},children:[optionImage&&/*#__PURE__*/_jsx(\"div\",{style:{width:isMobile?\"80px\":\"100px\",height:\"100%\",flexShrink:0,overflow:\"hidden\",display:\"flex\",alignItems:\"stretch\"},children:/*#__PURE__*/_jsx(\"img\",{src:optionImage,alt:option.label,style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}})}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,padding:isMobile?\"16px\":\"18px\",display:\"flex\",alignItems:\"center\",gap:\"12px\"},children:[/*#__PURE__*/_jsx(\"input\",{type:\"checkbox\",checked:isChecked,onChange:e=>{const currentAnswers=answer||[];if(e.target.checked){handleAnswer(currentQuestionId,[...currentAnswers,option.value]);}else{handleAnswer(currentQuestionId,currentAnswers.filter(a=>a!==option.value));}},style:{width:\"18px\",height:\"18px\",accentColor:\"#5E68EA\",flexShrink:0}}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:isMobile?\"15px\":\"16px\",fontWeight:\"500\",color:isChecked?colors.primary:\"#111827\",flex:1},children:option.label})]})]},option.value);})})]});case\"slider\":const defaultValue=question.default||question.min;const currentValue=answer!==undefined?answer:defaultValue;if(answer===undefined){handleAnswer(currentQuestionId,defaultValue);}return /*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:\"500px\",margin:\"0 auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",marginBottom:isMobile?\"32px\":\"40px\"},children:[/*#__PURE__*/_jsx(\"h2\",{style:{fontSize:isMobile?\"16px\":\"28px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 8px 0\",lineHeight:\"1.3\"},children:question.question}),question.subtitle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:isMobile?\"13px\":\"16px\",margin:\"0\",fontWeight:\"400\"},children:question.subtitle})]}),/*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsx(\"div\",{style:{textAlign:\"center\",marginBottom:\"32px\",padding:isMobile?\"24px\":\"32px\",backgroundColor:\"#f8faff\",borderRadius:\"12px\",border:\"1px solid #e0e7ff\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:\"12px\",flexWrap:\"wrap\"},children:[/*#__PURE__*/_jsx(\"input\",{type:\"number\",min:question.min,max:question.max,step:question.step,value:currentValue,onChange:e=>{const inputValue=e.target.value;// Allow empty input temporarily during editing\nif(inputValue===\"\"){// Don't update the answer state, but allow the input to be empty\nreturn;}const numValue=parseInt(inputValue);// Only update if it's a valid number\nif(!isNaN(numValue)){const clampedValue=Math.max(question.min,Math.min(question.max,numValue));handleAnswer(currentQuestionId,clampedValue);}},onBlur:e=>{// Reset to min value if field is empty when user clicks away\nif(e.target.value===\"\"||isNaN(parseInt(e.target.value))){handleAnswer(currentQuestionId,question.min);}e.target.style.borderColor=\"#5E68EA\";e.target.style.boxShadow=\"none\";},onKeyDown:e=>{// Allow all normal keyboard operations including delete\nif(e.key===\"Backspace\"||e.key===\"Delete\"){// Let the browser handle deletion normally\nreturn true;}// Allow Enter to blur the field (finish editing)\nif(e.key===\"Enter\"){e.target.blur();}},style:{fontSize:isMobile?\"22px\":\"36px\",fontWeight:\"700\",color:colors.primary,backgroundColor:\"transparent\",border:`2px solid ${colors.primary}`,borderRadius:\"8px\",padding:isMobile?\"8px 12px\":\"12px 16px\",textAlign:\"center\",width:isMobile?\"120px\":\"140px\",outline:\"none\",transition:\"all 0.2s ease\"},onFocus:e=>{e.target.style.boxShadow=`0 0 0 3px ${colors.primary}20`;// Select all text when focused for easy replacement\nsetTimeout(()=>e.target.select(),0);}}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:isMobile?\"22px\":\"32px\",fontWeight:\"600\",color:colors.primary,lineHeight:\"1\"},children:question.unit})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"0 16px\"},children:[/*#__PURE__*/_jsx(\"input\",{type:\"range\",min:question.min,max:question.max,step:question.step,value:currentValue,onChange:e=>handleAnswer(currentQuestionId,parseInt(e.target.value)),style:{width:\"100%\",height:\"6px\",borderRadius:\"3px\",background:`linear-gradient(to right, ${colors.primary} 0%, ${colors.primary} ${(currentValue-question.min)/(question.max-question.min)*100}%, #e5e7eb ${(currentValue-question.min)/(question.max-question.min)*100}%, #e5e7eb 100%)`,outline:\"none\",cursor:\"pointer\",WebkitAppearance:\"none\",appearance:\"none\"}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",marginTop:\"16px\",fontSize:\"14px\",color:\"#6b7280\",fontWeight:\"500\"},children:[/*#__PURE__*/_jsxs(\"span\",{children:[question.min,\" \",question.unit]}),/*#__PURE__*/_jsx(\"span\",{children:question.unit===\"%\"?`${question.max} ${question.unit}`:`${question.max}+ ${question.unit}`})]})]})]})]});// Enhanced input case for phone numbers\n// Enhanced input case for phone numbers\n// Enhanced input case for phone numbers\n// Enhanced input case for phone numbers\n// Enhanced input case for phone numbers\n// Enhanced input case for phone numbers\n// Enhanced input case for phone numbers\n// SOLUTION: Enhanced email field with clear separation and stronger email signals\n// STEP 1: Update your input case to handle email field properly\n// AGGRESSIVE FIX: Complete field isolation with context reset\n// UPDATE YOUR INPUT CASE WITH ENHANCED ENTER HANDLING:\ncase\"input\":return /*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:\"500px\",margin:\"0 auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",marginBottom:isMobile?\"24px\":\"32px\"},children:[/*#__PURE__*/_jsx(\"h2\",{style:{fontSize:isMobile?\"16px\":\"28px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 8px 0\",lineHeight:\"1.3\"},children:question.question}),question.subtitle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:isMobile?\"13px\":\"16px\",margin:\"0\",fontWeight:\"400\"},children:question.subtitle})]}),question.inputType===\"email\"&&/*#__PURE__*/_jsx(\"div\",{style:{textAlign:\"center\",padding:\"12px\",backgroundColor:\"#f8fafc\",borderRadius:\"8px\",marginBottom:\"16px\",border:\"1px solid #e2e8f0\"},children:/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"14px\",color:\"#475569\",fontWeight:\"500\"},children:\"E-Mail f\\xfcr Ihr kostenloses Angebot\"})}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\"},children:[question.inputType===\"email\"?/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"16px\",backgroundColor:\"#f8fafc\",borderRadius:\"8px\",border:\"1px solid #e2e8f0\"},children:[/*#__PURE__*/_jsx(\"input\",{type:\"email\",name:\"user-email\",id:\"contact-email-address\",autoComplete:\"email\",inputMode:\"email\",autoCapitalize:\"none\",autoCorrect:\"off\",spellCheck:false,\"aria-label\":\"E-Mail-Adresse f\\xfcr Angebot\",role:\"textbox\",\"data-field-purpose\":\"email-contact\",form:\"\",value:answer||\"\",onChange:e=>handleAnswer(currentQuestionId,e.target.value),onKeyDown:e=>{if(e.key===\"Enter\"){e.preventDefault();const isValid=/^[^\\s@]+@[^\\s@]+$/.test(e.target.value?.trim()||\"\");if(isValid){const isLastStep=currentStep===questionFlow.length-1;if(isLastStep){if(!isSubmitting)handleSubmit();}else{nextStep();}}}},onFocus:e=>{e.target.style.borderColor=\"#5E68EA\";e.target.style.boxShadow=\"0 0 0 3px rgba(94, 104, 234, 0.1)\";setTimeout(()=>{e.target.setAttribute(\"autocomplete\",\"email\");e.target.setAttribute(\"data-email-field\",\"true\");},0);},onBlur:e=>{const isValid=/^[^\\s@]+@[^\\s@]+$/.test(answer?.trim()||\"\");e.target.style.borderColor=answer&&!isValid?\"#ef4444\":\"#e5e7eb\";e.target.style.boxShadow=\"0 1px 2px rgba(0, 0, 0, 0.05)\";},placeholder:\"ihre.email@beispiel.de\",style:{width:\"100%\",padding:isMobile?\"18px\":\"18px\",fontSize:\"16px\",border:answer&&!/^[^\\s@]+@[^\\s@]+$/.test(answer?.trim()||\"\")?\"2px solid #ef4444\":\"1px solid #e5e7eb\",borderRadius:\"8px\",outline:\"none\",transition:\"border-color 0.2s ease\",boxSizing:\"border-box\",backgroundColor:\"white\",fontWeight:\"400\",boxShadow:\"0 1px 2px rgba(0, 0, 0, 0.05)\",fontFamily:\"inherit\",letterSpacing:\"normal\",WebkitAppearance:\"none\",appearance:\"none\",paddingRight:\"45px\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",right:\"30px\",top:\"50%\",transform:\"translateY(-50%)\",fontSize:\"16px\",color:\"#94a3b8\",pointerEvents:\"none\"}})]}):/*#__PURE__*/_jsx(\"input\",{type:question.inputType||\"text\",name:question.inputType===\"tel\"?\"tel\":\"text\",id:`${question.inputType||\"text\"}-input`,autoComplete:question.inputType===\"tel\"?\"tel-national\":\"off\",...question.inputType===\"tel\"&&{inputMode:\"tel\",autoCapitalize:\"none\",autoCorrect:\"off\",spellCheck:false},value:answer||\"\",onChange:e=>{if(question.inputType===\"tel\"){handlePhoneInput(e.target.value,currentQuestionId);}else{handleAnswer(currentQuestionId,e.target.value);}},onKeyDown:e=>{if(e.key===\"Enter\"){e.preventDefault();let isValid=true;if(question.inputType===\"tel\"){isValid=validatePhoneNumber(e.target.value?.trim());}if(isValid&&e.target.value?.trim()){const isLastStep=currentStep===questionFlow.length-1;if(isLastStep){if(!isSubmitting)handleSubmit();}else{nextStep();}}}},onFocus:e=>{e.target.style.borderColor=\"#5E68EA\";e.target.style.boxShadow=\"0 0 0 3px rgba(94, 104, 234, 0.1)\";},onBlur:e=>{const isValid=question.inputType===\"tel\"?validatePhoneNumber(answer?.trim()):true;e.target.style.borderColor=answer&&!isValid?\"#ef4444\":\"#e5e7eb\";e.target.style.boxShadow=\"0 1px 2px rgba(0, 0, 0, 0.05)\";},placeholder:question.inputType===\"tel\"?\"Telefonnummer eingeben...\":question.placeholder,style:{width:\"100%\",padding:isMobile?\"18px\":\"18px\",fontSize:\"16px\",border:answer&&question.inputType===\"tel\"&&!validatePhoneNumber(answer.trim())?\"2px solid #ef4444\":\"1px solid #e5e7eb\",borderRadius:\"8px\",outline:\"none\",transition:\"border-color 0.2s ease\",boxSizing:\"border-box\",backgroundColor:\"white\",fontWeight:\"400\",boxShadow:\"0 1px 2px rgba(0, 0, 0, 0.05)\",fontFamily:question.inputType===\"tel\"?\"SFMono-Regular, Consolas, Monaco, monospace\":\"inherit\",letterSpacing:question.inputType===\"tel\"?\"0.5px\":\"normal\",WebkitAppearance:\"none\",appearance:\"none\"}}),question.unit&&question.inputType!==\"email\"&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",right:\"16px\",top:\"50%\",transform:\"translateY(-50%)\",color:\"#6b7280\",fontSize:\"16px\",fontWeight:\"500\"},children:question.unit}),question.inputType===\"tel\"&&answer&&!validatePhoneNumber(answer.trim())&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:\"8px\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{color:\"#ef4444\",fontSize:\"14px\",margin:\"0 0 4px 0\",fontWeight:\"400\"},children:\"Bitte geben Sie eine g\\xfcltige deutsche Telefonnummer ein\"}),/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:\"12px\",margin:\"0\",fontStyle:\"italic\"},children:\"Mobil: +49176 12345678 | Festnetz: +4930 12345678\"})]}),question.inputType===\"email\"&&answer&&!/^[^\\s@]+@[^\\s@]+$/.test(answer.trim())&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:\"8px\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{color:\"#ef4444\",fontSize:\"14px\",margin:\"0 0 4px 0\",fontWeight:\"400\"},children:\"Bitte geben Sie eine g\\xfcltige E-Mail-Adresse ein\"}),/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:\"12px\",margin:\"0\",fontStyle:\"italic\"},children:\"Beispiel: name@beispiel.de\"})]}),question.inputType===\"tel\"&&(!answer||answer===\"\")&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:\"12px\",margin:\"8px 0 0 0\",fontStyle:\"italic\"},children:isMobile?\"\":\"\"}),question.inputType===\"email\"&&(!answer||answer===\"\")&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:\"12px\",margin:\"8px 0 0 0\",fontStyle:\"italic\"},children:isMobile?\"\":\"\"})]})]});// ALSO UPDATE THE ADDRESS CASE TO SUPPORT ENTER:\ncase\"address\":return /*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:\"600px\",margin:\"0 auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",marginBottom:isMobile?\"24px\":\"32px\"},children:[/*#__PURE__*/_jsx(\"h2\",{style:{fontSize:isMobile?\"18px\":\"28px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 8px 0\",lineHeight:\"1.3\"},children:question.question}),question.subtitle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:isMobile?\"13px\":\"16px\",margin:\"0\",fontWeight:\"400\"},children:question.subtitle})]}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(\"input\",{ref:addressInputRef,type:\"text\",name:\"address\",id:\"address-input\",autoComplete:\"street-address\",\"data-autocomplete\":\"address-line1\",value:answer||\"\",onChange:e=>{const inputValue=e.target.value;handleAnswer(currentQuestionId,inputValue);// Reset validation flag when user types manually\nif(!autocompleteRef.current||inputValue!==answer){setIsAddressFromGoogle(false);}// Clear the map if user starts typing again\nif(mapRef.current&&mapRef.current.style.display===\"block\"){mapRef.current.style.display=\"none\";mapRef.current.style.height=\"0px\";}},onKeyDown:e=>{if(e.key===\"Enter\"){e.preventDefault();// Only allow proceed if address is from Google Maps\nif(isAddressFromGoogle&&e.target.value?.trim()){const isLastStep=currentStep===questionFlow.length-1;if(isLastStep){if(!isSubmitting)handleSubmit();}else{nextStep();}}}},onBlur:e=>{e.target.style.borderColor=answer&&!isAddressFromGoogle?\"#ef4444\":\"#e5e7eb\";e.target.style.boxShadow=\"0 1px 2px rgba(0, 0, 0, 0.05)\";},placeholder:question.placeholder,style:{width:\"100%\",padding:isMobile?\"16px\":\"18px\",fontSize:\"16px\",border:answer&&!isAddressFromGoogle?\"2px solid #ef4444\":\"1px solid #e5e7eb\",borderRadius:\"12px\",outline:\"none\",transition:\"border-color 0.2s ease\",boxSizing:\"border-box\",backgroundColor:\"white\",fontWeight:\"400\",boxShadow:\"0 1px 2px rgba(0, 0, 0, 0.05)\"},onFocus:e=>{e.target.style.borderColor=\"#5E68EA\";e.target.style.boxShadow=\"0 0 0 3px rgba(94, 104, 234, 0.1)\";}}),!isGoogleMapsLoaded&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",right:\"16px\",top:\"50%\",transform:\"translateY(-50%)\",color:\"#6b7280\",fontSize:\"14px\",fontWeight:\"400\"},children:\"Laden...\"}),answer&&!isAddressFromGoogle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#ef4444\",fontSize:\"14px\",margin:\"8px 0 0 0\",fontWeight:\"400\"},children:\"Bitte geben Sie eine vollst\\xe4ndige Adresse ein (Stra\\xdfe, Hausnummer, PLZ, Ort)\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:\"13px\",color:\"#6b7280\",margin:\"12px 0 0 0\",fontStyle:\"italic\",fontWeight:\"400\"},children:isGoogleMapsLoaded?\"\":\"Google Maps wird geladen...\"})]}),showServiceAreaWarning&&distanceFromCenter>serviceRadiusKm&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:\"16px\",padding:\"16px\",backgroundColor:\"#fef3c7\",border:\"1px solid #fbbf24\",borderRadius:\"8px\",animation:\"slideInUp 0.3s ease-out\"},children:[/*#__PURE__*/_jsxs(\"p\",{style:{color:\"#92400e\",fontSize:\"14px\",margin:\"0 0 12px 0\",fontWeight:\"500\"},children:[\"\u26A0\uFE0F Diese Adresse liegt \",Math.round(distanceFromCenter),\" km von unserem Servicebereich entfernt (max. \",serviceRadiusKm,\" km).\"]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:\"12px\",flexWrap:\"wrap\"},children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>{setIsOutOfServiceArea(true);},style:{padding:\"8px 16px\",backgroundColor:colors.warning,color:\"white\",border:\"none\",borderRadius:\"6px\",fontSize:\"14px\",fontWeight:\"600\",cursor:\"pointer\"},children:\"Trotzdem fortfahren\"}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>{handleAnswer(\"address\",\"\");setIsAddressFromGoogle(false);setShowServiceAreaWarning(false);},style:{padding:\"8px 16px\",backgroundColor:\"white\",color:colors.warning,border:`1px solid ${colors.warning}`,borderRadius:\"6px\",fontSize:\"14px\",fontWeight:\"600\",cursor:\"pointer\"},children:\"Andere Adresse\"})]})]}),/*#__PURE__*/_jsx(\"div\",{ref:mapRef,style:{width:\"100%\",height:\"0px\",borderRadius:\"20px\",overflow:\"hidden\",marginTop:\"24px\",boxShadow:\"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)\",display:\"none\",opacity:\"0\",transform:\"translateY(20px)\",border:\"3px solid #5E68EA\",position:\"relative\"},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"0\",left:\"0\",right:\"0\",bottom:\"0\",backgroundColor:\"rgba(94, 104, 234, 0.1)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",zIndex:1,borderRadius:\"17px\",backdropFilter:\"blur(10px)\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{backgroundColor:\"white\",padding:\"12px 24px\",borderRadius:\"12px\",boxShadow:\"0 8px 16px rgba(0, 0, 0, 0.1)\",display:\"flex\",alignItems:\"center\",gap:\"12px\",fontSize:\"14px\",fontWeight:\"500\",color:colors.primary,animation:\"pulse 2s infinite\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"16px\",height:\"16px\",backgroundColor:\"#5E68EA\",borderRadius:\"50%\",animation:\"spin 1s linear infinite\"}}),\"Karte wird geladen...\"]})})})]});// ALSO UPDATE DUAL-INPUT CASE FOR ENTER SUPPORT:\n// UPDATE THE DUAL-INPUT CASE - Remove Enter hints:\ncase\"dual-input\":return /*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:\"500px\",margin:\"0 auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",marginBottom:isMobile?\"24px\":\"32px\"},children:[/*#__PURE__*/_jsx(\"h2\",{style:{fontSize:isMobile?\"16px\":\"28px\",fontWeight:\"600\",color:\"#111827\",margin:\"0 0 8px 0\",lineHeight:\"1.3\"},children:question.question}),question.subtitle&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"#6b7280\",fontSize:isMobile?\"13px\":\"16px\",margin:\"0\",fontWeight:\"400\"},children:question.subtitle})]}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"grid\",gridTemplateColumns:isMobile?\"1fr\":\"1fr 1fr\",gap:\"16px\"},children:question.fields.map((field,index)=>/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\"},children:/*#__PURE__*/_jsx(\"input\",{type:\"text\",name:field.id===\"vorname\"?\"given-name\":\"family-name\",autoComplete:field.id===\"vorname\"?\"given-name\":\"family-name\",value:answer?.[field.id]||\"\",onChange:e=>{const newAnswer={...answer,[field.id]:e.target.value};handleAnswer(currentQuestionId,newAnswer);},// Keep Enter handling but remove hints\n    onKeyDown:e=>{if(e.key===\"Enter\"){e.preventDefault();// Check if both fields are filled\n    const currentAnswer={...answer,[field.id]:e.target.value};const isValid=currentAnswer.vorname?.trim()&&currentAnswer.nachname?.trim();if(isValid){const isLastStep=currentStep===questionFlow.length-1;if(isLastStep){if(!isSubmitting)handleSubmit();}else{nextStep();}}else{// Focus next field if this one is filled\n    if(e.target.value.trim()&&index===0){const nextInput=e.target.parentElement.nextElementSibling?.querySelector(\"input\");if(nextInput)nextInput.focus();}}}},placeholder:field.placeholder,style:{width:\"100%\",padding:isMobile?\"16px\":\"18px\",fontSize:\"16px\",border:\"1px solid #e5e7eb\",borderRadius:\"8px\",outline:\"none\",transition:\"border-color 0.2s ease\",boxSizing:\"border-box\",backgroundColor:\"white\",fontWeight:\"400\",boxShadow:\"0 1px 2px rgba(0, 0, 0, 0.05)\"},onFocus:e=>{e.target.style.borderColor=\"#5E68EA\";e.target.style.boxShadow=\"0 0 0 3px rgba(94, 104, 234, 0.1)\";},onBlur:e=>{e.target.style.borderColor=\"#e5e7eb\";e.target.style.boxShadow=\"0 1px 2px rgba(0, 0, 0, 0.05)\";}})},field.id))})]});default:return null;}};const isLastStep=currentStep===questionFlow.length-1;const buttonStyle=(isPrimary,isDisabled)=>({padding:isMobile?\"16px 28px\":\"18px 36px\",borderRadius:\"12px\",fontWeight:\"600\",fontSize:isMobile?\"16px\":\"17px\",border:isPrimary?\"none\":`2px solid ${colors.gray[200]}`,cursor:isDisabled?\"not-allowed\":\"pointer\",transition:\"all 0.3s cubic-bezier(0.4, 0, 0.2, 1)\",backgroundColor:isDisabled?colors.gray[100]:isPrimary?colors.primary:\"white\",color:isDisabled?colors.gray[400]:isPrimary?\"white\":\"#374151\",minWidth:isMobile?\"110px\":\"130px\",boxShadow:isPrimary&&!isDisabled?`0 10px 15px -3px ${colors.primary}30, 0 4px 6px -2px ${colors.primary}20`:\"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)\",transform:\"translateY(0)\",letterSpacing:\"-0.01em\"});return /*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",top:\"0\",left:\"0\",right:\"0\",zIndex:50,height:\"4px\",backgroundColor:colors.gray[200]},children:/*#__PURE__*/_jsx(\"div\",{style:{height:\"100%\",background:`linear-gradient(90deg, ${colors.primary}, ${colors.primary}dd)`,transition:\"width 0.8s cubic-bezier(0.4, 0, 0.2, 1)\",width:`${progress}%`,boxShadow:`0 0 8px ${colors.primary}40`}})}),/*#__PURE__*/_jsx(\"div\",{style:contentContainerStyle,children:/*#__PURE__*/_jsxs(\"div\",{style:mainContainerStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{...cardStyle,marginTop:\"0\",marginBottom:isMobile?\"24px\":\"32px\"},children:renderQuestion()}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:\"16px\"},children:[/*#__PURE__*/_jsx(\"button\",{onClick:prevStep,disabled:currentStep<=minStep,style:buttonStyle(false,currentStep<=minStep),onMouseEnter:e=>{if(currentStep>minStep){e.currentTarget.style.backgroundColor=colors.gray[50];e.currentTarget.style.borderColor=colors.gray[300];e.currentTarget.style.transform=\"translateY(-2px)\";e.currentTarget.style.boxShadow=\"0 10px 15px -3px rgba(0, 0, 0, 0.15), 0 4px 6px -2px rgba(0, 0, 0, 0.1)\";}},onMouseLeave:e=>{if(currentStep>minStep){e.currentTarget.style.backgroundColor=\"white\";e.currentTarget.style.borderColor=colors.gray[200];e.currentTarget.style.transform=\"translateY(0)\";e.currentTarget.style.boxShadow=\"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)\";}},children:\"\u2190 Zur\\xfcck\"}),isLastStep?/*#__PURE__*/_jsx(\"button\",{onClick:handleSubmit,disabled:!isStepValid()||isSubmitting,style:buttonStyle(true,!isStepValid()||isSubmitting),onMouseEnter:e=>{if(isStepValid()&&!isSubmitting){e.currentTarget.style.backgroundColor=colors.primaryHover;e.currentTarget.style.transform=\"translateY(-3px)\";e.currentTarget.style.boxShadow=`0 20px 25px -5px ${colors.primary}40, 0 10px 10px -5px ${colors.primary}30`;}},onMouseLeave:e=>{if(isStepValid()&&!isSubmitting){e.currentTarget.style.backgroundColor=colors.primary;e.currentTarget.style.transform=\"translateY(0)\";e.currentTarget.style.boxShadow=`0 10px 15px -3px ${colors.primary}30, 0 4px 6px -2px ${colors.primary}20`;}},children:isSubmitting?/*#__PURE__*/_jsxs(\"span\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{animation:\"spin 1s linear infinite\"}}),isMobile?\"Senden...\":\"Wird gesendet...\"]}):/*#__PURE__*/_jsx(\"span\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\"},children:isMobile?\"Angebot erhalten\":\"Kostenloses Angebot erhalten\"})}):/*#__PURE__*/_jsx(\"button\",{onClick:nextStep,disabled:!isStepValid(),style:buttonStyle(true,!isStepValid()),onMouseEnter:e=>{if(isStepValid()){e.currentTarget.style.backgroundColor=colors.primaryHover;e.currentTarget.style.transform=\"translateY(-3px)\";e.currentTarget.style.boxShadow=`0 20px 25px -5px ${colors.primary}40, 0 10px 10px -5px ${colors.primary}30`;}},onMouseLeave:e=>{if(isStepValid()){e.currentTarget.style.backgroundColor=colors.primary;e.currentTarget.style.transform=\"translateY(0)\";e.currentTarget.style.boxShadow=`0 10px 15px -3px ${colors.primary}30, 0 4px 6px -2px ${colors.primary}20`;}},children:\"Weiter \u2192\"})]})]})}),/*#__PURE__*/_jsx(\"style\",{children:`\n                    @keyframes spin {\n                        from { transform: rotate(0deg); }\n                        to { transform: rotate(360deg); }\n                    }\n\n                    @keyframes slideInUp {\n                        from { \n                            opacity: 0; \n                            transform: translateY(30px);\n                        }\n                        to { \n                            opacity: 1; \n                            transform: translateY(0);\n                        }\n                    }\n\n                    @keyframes fadeInScale {\n                        from { \n                            opacity: 0; \n                            transform: scale(0.95) translateY(10px);\n                        }\n                        to { \n                            opacity: 1; \n                            transform: scale(1) translateY(0);\n                        }\n                    }\n\n                    @keyframes pulse {\n                        0%, 100% { \n                            opacity: 1;\n                            transform: scale(1);\n                        }\n                        50% { \n                            opacity: 0.9;\n                            transform: scale(1.05);\n                        }\n                    }\n\n                    @keyframes successBounce {\n                        0% { transform: scale(0.3); opacity: 0; }\n                        50% { transform: scale(1.05); }\n                        70% { transform: scale(0.9); }\n                        100% { transform: scale(1); opacity: 1; }\n                    }\n                    \n                    @keyframes checkmark {\n                        0% { transform: scale(0); opacity: 0; }\n                        100% { transform: scale(1); opacity: 1; }\n                    }\n\n                    @keyframes shimmer {\n                        0% { background-position: -200px 0; }\n                        100% { background-position: calc(200px + 100%) 0; }\n                    }\n\n                    @keyframes mapSlideIn {\n                        from {\n                            height: 0px;\n                            opacity: 0;\n                            transform: translateY(20px);\n                        }\n                        to {\n                            height: 400px;\n                            opacity: 1;\n                            transform: translateY(0px);\n                        }\n                    }\n\n                    input[type=\"range\"]::-webkit-slider-thumb {\n                        appearance: none;\n                        height: 20px;\n                        width: 20px;\n                        border-radius: 50%;\n                        background: ${colors.primary};\n                        cursor: pointer;\n                        boxShadow: 0 2px 4px ${colors.primary}30;\n                        border: 2px solid white;\n                        transition: all 0.2s ease;\n                    }\n                    \n                    input[type=\"range\"]::-webkit-slider-thumb:hover {\n                        transform: scale(1.1);\n                        boxShadow: 0 4px 8px ${colors.primary}40;\n                    }\n                    \n                    input[type=\"range\"]::-moz-range-thumb {\n                        height: 20px;\n                        width: 20px;\n                        border-radius: 50%;\n                        background: ${colors.primary};\n                        cursor: pointer;\n                        border: 2px solid white;\n                        boxShadow: 0 2px 4px ${colors.primary}30;\n                    }\n\n                    .pac-container {\n                        background-color: white;\n                        border: 1px solid ${colors.gray[200]};\n                        border-radius: 8px;\n                        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n                        font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Inter\", sans-serif;\n                        margin-top: 4px;\n                        overflow: hidden;\n                        animation: slideInUp 0.3s ease-out;\n                    }\n\n                    .pac-item {\n                        border-bottom: 1px solid ${colors.gray[100]};\n                        padding: 12px 16px;\n                        font-size: 15px;\n                        cursor: pointer;\n                        transition: all 0.2s ease;\n                    }\n\n                    .pac-item:last-child {\n                        border-bottom: none;\n                    }\n\n                    .pac-item:hover {\n                        background-color: ${colors.gray[50]};\n                        transform: translateX(2px);\n                    }\n\n                    .pac-item-selected {\n                        background-color: ${colors.primaryLight};\n                        border-left: 3px solid ${colors.primary};\n                    }\n\n                    .pac-item-query {\n                        color: ${colors.primary};\n                        fontWeight: 500;\n                    }\n\n                    .pac-matched {\n                        fontWeight: 600;\n                        color: ${colors.primary};\n                    }\n\n                    .pac-icon {\n                        display: none;\n                    }\n\n                    /* Custom input focus animations */\n                    input:focus, textarea:focus {\n                        animation: focusPulse 0.3s ease-out;\n                    }\n\n                    @keyframes focusPulse {\n                        0% { transform: scale(1); }\n                        50% { transform: scale(1.02); }\n                        100% { transform: scale(1); }\n                    }\n                `})]});}addPropertyControls(RoofLeadForm,{initialQuestionId:{type:ControlType.Enum,title:\"Start Step\",options:Object.keys(questionTitles),optionTitles:Object.values(questionTitles),defaultValue:\"roofType\"},thankYouUrl:{type:ControlType.String,title:\"Thank You Page URL\",defaultValue:\"https://dachsatec.de/thank-you\",placeholder:\"https://example.com/thank-you\"},webhookId:{type:ControlType.Number,title:\"Webhook ID\",min:1,max:9999,step:1,displayStepper:true},serviceOverride:{type:ControlType.Enum,title:\"Service Override\",options:[\"none\",\"komplett\",\"daemmung\",\"fenster\",\"begrunung\",\"gauben\",\"dachrinnen\",\"reparatur\"],optionTitles:[\"No Override\",\"Complete Roof\",\"Insulation Only\",\"Windows Only\",\"Roof Greening\",\"Dormers Only\",\"Gutters Only\",\"Repair Only\"],defaultValue:\"none\"},primaryColor:{type:ControlType.Color,title:\"Primary Color\",defaultValue:\"#5E68EA\"},successColor:{type:ControlType.Color,title:\"Success Color\",defaultValue:\"#10b981\"},warningColor:{type:ControlType.Color,title:\"Warning Color\",defaultValue:\"#f59e0b\"},selectedBackgroundColor:{type:ControlType.Color,title:\"Selected Background Color\",defaultValue:\"#f0f4ff\"},selectedBackgroundColor:{type:ControlType.Color,title:\"Selected Background Color\",defaultValue:\"#f0f4ff\"},selectedTextColor:{type:ControlType.Color,title:\"Selected Text Color\",defaultValue:\"#1e40af\"},serviceCenterLatitude:{type:ControlType.Number,title:\"Service Center Latitude\",defaultValue:51.2277,min:-90,max:90,step:1e-5,displayStepper:true},serviceCenterLongitude:{type:ControlType.Number,title:\"Service Center Longitude\",defaultValue:6.7735,min:-180,max:180,step:1e-5,displayStepper:true},serviceRadiusKm:{type:ControlType.Number,title:\"Service Radius (km)\",defaultValue:50,min:1,max:500,step:1,displayStepper:true},showDistanceWarning:{type:ControlType.Boolean,title:\"Show Distance Warning\",defaultValue:true,enabledTitle:\"Show warning before rejecting\",disabledTitle:\"Reject immediately\"}});// Demo Component showing autocomplete functionality\nfunction RoofLeadFormDemo(){return /*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"20px\",background:\"#f0f9ff\",border:\"1px solid #0284c7\",borderRadius:\"8px\",marginBottom:\"20px\",textAlign:\"center\"},children:[/*#__PURE__*/_jsx(\"h3\",{style:{margin:\"0 0 10px 0\",color:\"#0284c7\"},children:\"Browser Autocomplete Enabled\"}),/*#__PURE__*/_jsx(\"p\",{style:{margin:\"0 0 15px 0\",fontSize:\"14px\",color:\"#0369a1\"},children:\"Form fields will suggest your saved information (name, email, phone, address) from your browser's autofill data\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"repeat(auto-fit, minmax(200px, 1fr))\",gap:\"10px\",marginTop:\"15px\",fontSize:\"12px\",color:\"#0369a1\"},children:[/*#__PURE__*/_jsx(\"div\",{children:'\uD83D\uDC64 Name: autocomplete=\"given-name/family-name\"'}),/*#__PURE__*/_jsx(\"div\",{children:'\uD83D\uDCE7 Email: autocomplete=\"email\"'}),/*#__PURE__*/_jsx(\"div\",{children:'\uD83D\uDCF1 Phone: autocomplete=\"tel\"'}),/*#__PURE__*/_jsx(\"div\",{children:'\uD83C\uDFE0 Address: autocomplete=\"street-address\"'})]})]}),/*#__PURE__*/_jsx(RoofLeadForm,{})]});}// Show the demo by default, but export the main component\nexport default RoofLeadFormDemo;export{RoofLeadForm};\nexport const __FramerMetadata__ = {\"exports\":{\"RoofLeadForm\":{\"type\":\"reactComponent\",\"name\":\"RoofLeadForm\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"RoofLeadFormDemo\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./MASTERFORM_2.map"],
  "mappings": "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",
  "names": ["questionTitles", "questionUrls", "urlToQuestion", "k", "v", "RoofLeadForm", "initialQuestionId", "thankYouUrl", "webhookId", "serviceOverride", "primaryColor", "successColor", "warningColor", "selectedBackgroundColor", "selectedTextColor", "serviceCenterLatitude", "serviceCenterLongitude", "serviceRadiusKm", "showDistanceWarning", "generateColorVariants", "baseColor", "hexToRgb", "hex", "result", "rgbToHex", "r", "g", "b", "x", "adjustBrightness", "color", "percent", "rgb", "factor", "lighten", "primaryVariants", "successVariants", "warningVariants", "questionDependencies", "getRequiredAnswers", "questionId", "required", "current", "dep", "parent", "STORAGE_KEY", "savedAnswers", "window", "saved", "initialAnswers", "initialPending", "hash", "qId", "isAddressFromGoogle", "setIsAddressFromGoogle", "ye", "currentStep", "setCurrentStep", "answers", "setAnswers", "questionFlow", "setQuestionFlow", "totalSteps", "setTotalSteps", "isMobile", "setIsMobile", "isSubmitting", "setIsSubmitting", "isGoogleMapsLoaded", "setIsGoogleMapsLoaded", "isMieterSelected", "setIsMieterSelected", "isOutOfServiceArea", "setIsOutOfServiceArea", "distanceFromCenter", "setDistanceFromCenter", "showServiceAreaWarning", "setShowServiceAreaWarning", "pendingStep", "setPendingStep", "isReady", "setIsReady", "utmParams", "setUtmParams", "referrerInfo", "setReferrerInfo", "addressComponents", "setAddressComponents", "autocompleteRef", "pe", "addressInputRef", "mapRef", "mapInstanceRef", "se", "prev", "ue", "handleHashChange", "minStep", "setMinStep", "index", "id", "currentId", "colors", "containerStyle", "contentContainerStyle", "cardStyle", "mainContainerStyle", "questionImages", "calculateDistance", "lat1", "lon1", "lat2", "lon2", "dLat", "dLon", "a", "formatPhoneNumber", "value", "cleanNumber", "numbersAfter49", "numbers", "validatePhoneNumber", "phone", "cleanPhone", "germanNumber", "detectPhoneType", "parseGooglePlaceComponents", "place", "components", "locality", "administrative_area_level_2", "administrative_area_level_1", "sublocality", "component", "types", "selectBestCity", "formatted_address", "postal_code", "cityFromAddress", "extractCityFromFormattedAddress", "parts", "part", "cityMatch", "germanPostalPattern", "match", "potentialCity", "middlePart", "cityPattern", "error", "parseManualAddress", "addressString", "addressParts", "streetPart", "streetMatch", "cityPart", "postalMatch", "singleLineMatch", "updateAddressComponents", "address", "source", "generateSessionId", "trackGA4Event", "eventName", "parameters", "trackFormStart", "trackStepProgression", "fromStep", "toStep", "answer", "fromStepName", "toStepName", "trackFormCompletion", "formData", "trackStepView", "stepIndex", "hashUrl", "trackStepExit", "trackFormAbandonment", "currentStepIndex", "stepName", "trackQuestionInteraction", "questionType", "captureUTMParameters", "urlParams", "utm", "referrer", "key", "navigator", "fbclid", "handlePhoneInput", "handleAnswer", "cleanValue", "formattedValue", "checkMobile", "handleBeforeUnload", "handleVisibilityChange", "currentQuestionId", "currentHashUrl", "ThankYouPage", "u", "p", "e", "NotAvailablePage", "OutOfServiceAreaPage", "l", "script", "autocompleteInstance", "distance", "initializeMap", "nextStep", "map", "marker", "questions", "generateQuestionFlow", "flow", "roofType", "service", "newFlow", "question", "defaultValue", "prevStep", "isStepValid", "handleSubmit", "submitToWebhook", "data", "retryCount", "webhookUrl", "response", "responseText", "delay", "resolve", "formattedAnswers", "submissionData", "fbError", "gaError", "handleGlobalKeyDown", "progress", "renderQuestion", "hasImages", "option", "optionImage", "isSelected", "isDaemmungQuestion", "bar", "isChecked", "currentAnswers", "currentValue", "inputValue", "numValue", "clampedValue", "isValid", "field", "newAnswer", "currentAnswer", "nextInput", "isLastStep", "buttonStyle", "isPrimary", "isDisabled", "addPropertyControls", "ControlType"]
}
