{"id":3307,"date":"2026-04-07T23:05:12","date_gmt":"2026-04-07T21:05:12","guid":{"rendered":"https:\/\/dev.bikefiteurope.com\/ku-cycle-anfrage\/"},"modified":"2026-05-20T22:40:52","modified_gmt":"2026-05-20T20:40:52","slug":"ku-cycle-anfrage","status":"publish","type":"page","link":"https:\/\/dev.bikefiteurope.com\/en\/ku-cycle-anfrage\/","title":{"rendered":"K\u00fa Fit Session Anfrage"},"content":{"rendered":"<p><!-- markdownlint-disable MD033 --><\/p>\n<h1>K\u00fa Fit Session Anfrage<\/h1>\n<figure class=\"cf-page-image cf-page-image--hero\" data-image-role=\"hero\" data-asset-hint=\"ku-cycle-referral-bensheim\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/cf-auto-images\/hero-fillers\/ku-cycle-referral-bensheim.svg\" alt=\"K\u00fa Referral Formular bei CycleFit Europe in Bensheim\" loading=\"lazy\" \/><\/figure>\n<p>Nutze diese K\u00fa Fit Session Anfrage, wenn du deine Fit-, Fahr- und Aufbau-Situation strukturiert an CycleFit Europe senden willst. Das Formular ist fuer Fahrer gedacht, die vor Rahmen-, Cockpit- oder Kaufentscheidungen eine klarere K\u00fa Richtung brauchen.<\/p>\n<p>Wenn du die Situation lieber zuerst in einem Termin besprechen willst, nutze stattdessen die Buchung.<\/p>\n<p><a href=\"\/buchen\">Stattdessen Termin buchen<\/a><\/p>\n<h2>Was vor dem Absenden hilft<\/h2>\n<p>Die besten Anfragen sind klar, nicht perfekt. Wenn du Ziele, Event-Fokus, aktuelles Bike, Zeitfenster und Budgetkontext kennst, gib das mit an. Wenn du bereits einen Fit Report hast, kannst du ihn im Formular hochladen.<\/p>\n<p>So wird schneller sichtbar, ob der naechste Schritt K\u00fa Referral Guidance, Custom Bike Sizing oder ein gebuchter Termin sein sollte.<\/p>\n<p><a href=\"\/ku-cycle\">Zurueck zur K\u00fa Salesseite<\/a><\/p>\n<p><a href=\"\/custom-bikes\">Custom Bikes<\/a><\/p>\n<p><a href=\"\/custom-bike-sizing\">Custom Bike Sizing<\/a><\/p>\n<h2>K\u00fa Referral absenden<\/h2>\n        <form class=\"cyclefit-ku-referral elementor-form\" method=\"post\" action=\"https:\/\/dev.bikefiteurope.com\/wp-admin\/admin-post.php\" enctype=\"multipart\/form-data\">\r\n            <input type=\"hidden\" name=\"cyclefit_ku_nonce\" value=\"\">\r\n                        <input type=\"hidden\" name=\"cyclefit_ku_token_bucket\" value=\"988790\">\r\n            <input type=\"hidden\" name=\"cyclefit_ku_token\" value=\"ddac141ebecf834d3c1698b2fcc9c250390e0952196775d04dfded4e0ab72118\">\r\n            <input type=\"hidden\" name=\"action\" value=\"cyclefit_ku_submit\">\r\n            <input type=\"hidden\" name=\"cyclefit_ku_form_ts\" value=\"1779823216\">\r\n            <input type=\"hidden\" name=\"page_url\" value=\"\">\r\n            <input type=\"hidden\" name=\"page_path\" value=\"\">\r\n            <input type=\"hidden\" name=\"page_title\" value=\"\">\r\n            <input type=\"hidden\" name=\"referrer_url\" value=\"\">\r\n            <input type=\"hidden\" name=\"utm_source\" value=\"\">\r\n            <input type=\"hidden\" name=\"utm_medium\" value=\"\">\r\n            <input type=\"hidden\" name=\"utm_campaign\" value=\"\">\r\n            <input type=\"hidden\" name=\"utm_content\" value=\"\">\r\n            <input type=\"hidden\" name=\"utm_term\" value=\"\">\r\n            <input type=\"hidden\" name=\"gclid\" value=\"\">\r\n            <input type=\"hidden\" name=\"fbclid\" value=\"\">\r\n\r\n            <div class=\"cyclefit-ku-nonce-status\" hidden>\r\n                <div>Nonce status: <strong data-state=\"loading\">loading\u2026<\/strong><\/div>\r\n                <div class=\"cyclefit-ku-nonce-selftest\">\r\n                    <button type=\"button\" class=\"cyclefit-ku-nonce-selftest-btn\">Run nonce self-test<\/button>\r\n                    <span class=\"cyclefit-ku-nonce-selftest-status\"><\/span>\r\n                    <pre class=\"cyclefit-ku-nonce-selftest-output\" hidden><\/pre>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"cyclefit-ku-honeypot\" aria-hidden=\"true\" hidden>\r\n                <label>Company\r\n                    <input name=\"cyclefit_ku_company\" tabindex=\"-1\" autocomplete=\"off\">\r\n                <\/label>\r\n            <\/div>\r\n\r\n            <h3>K\u00fa Cycle referral<\/h3>\r\n            <p class=\"cyclefit-ku-intro\">\r\n                                    Built around your fit, goals, and real-world riding. Share a few details and we will match you with the right geometry, components, and timeline.\r\n                            <\/p>\r\n\r\n            <fieldset>\r\n                <legend>Contact<\/legend>\r\n                <p><label>Name*<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"name\" required><\/label><\/p>\r\n                <p><label>Email*<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" type=\"email\" name=\"email\" required><\/label><\/p>\r\n                <p><label>Phone<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"phone\"><\/label><\/p>\r\n                <p><label>City<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"city\"><\/label><\/p>\r\n                <p><label>Country<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"country\"><\/label><\/p>\r\n            <\/fieldset>\r\n\r\n            <fieldset>\r\n                <legend>Rider profile<\/legend>\r\n                <p><label>Height (cm)<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"height\"><\/label><\/p>\r\n                <p><label>Inseam (cm)<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"inseam\"><\/label><\/p>\r\n                <p><label>Weight (kg)<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"weight\"><\/label><\/p>\r\n                <p><label>Goals<br><textarea class=\"cyclefit-ku-textarea elementor-field elementor-field-textual\" name=\"goals\" rows=\"3\"><\/textarea><\/label><\/p>\r\n                <p><label>Event focus<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"event_focus\"><\/label><\/p>\r\n            <\/fieldset>\r\n\r\n            <fieldset>\r\n                <legend>Riding and intent<\/legend>\r\n                <p>\r\n                    <label>Riding style<\/label><br>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"riding_style[]\" value=\"road\"> Road<\/label>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"riding_style[]\" value=\"gravel\"> Gravel<\/label>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"riding_style[]\" value=\"tri\"> Tri<\/label>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"riding_style[]\" value=\"tt\"> Time Trial<\/label>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"riding_style[]\" value=\"mixed\"> Mixed<\/label>\r\n                <\/p>\r\n                <div class=\"cyclefit-ku-conditional\" data-show=\"riding_style\" data-values=\"tri,tt\" hidden>\r\n                    <p><label>Tri distance<br>\r\n                        <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"tri_distance\">\r\n                            <option value=\"\"><\/option>\r\n                            <option value=\"sprint\">Sprint<\/option>\r\n                            <option value=\"olympic\">Olympic<\/option>\r\n                            <option value=\"half\">Half<\/option>\r\n                            <option value=\"full\">Full<\/option>\r\n                        <\/select>\r\n                    <\/label><\/p>\r\n                    <p><label>Aero focus<br>\r\n                        <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"aero_focus\">\r\n                            <option value=\"\"><\/option>\r\n                            <option value=\"balanced\">Balanced<\/option>\r\n                            <option value=\"aero\">Max aero<\/option>\r\n                            <option value=\"comfort\">Comfort first<\/option>\r\n                        <\/select>\r\n                    <\/label><\/p>\r\n                    <p><label>Position priority<br>\r\n                        <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"position_priority\">\r\n                            <option value=\"\"><\/option>\r\n                            <option value=\"aggressive\">Aggressive<\/option>\r\n                            <option value=\"balanced\">Balanced<\/option>\r\n                            <option value=\"comfort\">Comfortable<\/option>\r\n                        <\/select>\r\n                    <\/label><\/p>\r\n                <\/div>\r\n                <p><label>Experience level<br>\r\n                    <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"experience_level\">\r\n                        <option value=\"\"><\/option>\r\n                        <option value=\"beginner\">Beginner<\/option>\r\n                        <option value=\"intermediate\">Intermediate<\/option>\r\n                        <option value=\"advanced\">Advanced<\/option>\r\n                        <option value=\"racing\">Racing<\/option>\r\n                    <\/select>\r\n                <\/label><\/p>\r\n                <p><label>Primary goal<br>\r\n                    <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"primary_goal\">\r\n                        <option value=\"\"><\/option>\r\n                        <option value=\"speed\">Speed<\/option>\r\n                        <option value=\"comfort\">Comfort<\/option>\r\n                        <option value=\"endurance\">Endurance<\/option>\r\n                        <option value=\"racing\">Racing<\/option>\r\n                        <option value=\"allround\">All-round<\/option>\r\n                    <\/select>\r\n                <\/label><\/p>\r\n                <p><label>Target events + dates<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"target_events\"><\/label><\/p>\r\n                <p><label>Weekly volume (hours or km)<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"weekly_volume\"><\/label><\/p>\r\n                <p><label>Pain points (neck, back, knee, hands)<br><textarea class=\"cyclefit-ku-textarea elementor-field elementor-field-textual\" name=\"pain_points\" rows=\"2\"><\/textarea><\/label><\/p>\r\n                <p><label>Geometry feel<br>\r\n                    <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"geometry_preference\">\r\n                        <option value=\"\"><\/option>\r\n                        <option value=\"aggressive\">Aggressive<\/option>\r\n                        <option value=\"balanced\">Balanced<\/option>\r\n                        <option value=\"endurance\">Endurance<\/option>\r\n                    <\/select>\r\n                <\/label><\/p>\r\n            <\/fieldset>\r\n\r\n            <fieldset>\r\n                <legend>Current bike<\/legend>\r\n                <p><label>Make<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"bike_make\"><\/label><\/p>\r\n                <p><label>Model<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"bike_model\"><\/label><\/p>\r\n                <p><label>Year<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"bike_year\"><\/label><\/p>\r\n            <\/fieldset>\r\n\r\n            <fieldset>\r\n                <legend>Buying intent<\/legend>\r\n                <p><label>Budget range<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"budget\"><\/label><\/p>\r\n                <p><label>Timeframe<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"timeframe\"><\/label><\/p>\r\n                <p><label>Build type<br>\r\n                    <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"build_type\">\r\n                        <option value=\"\"><\/option>\r\n                        <option value=\"new_build\">New custom build<\/option>\r\n                        <option value=\"frame_swap\">Frame swap<\/option>\r\n                        <option value=\"upgrade\">Upgrade current bike<\/option>\r\n                    <\/select>\r\n                <\/label><\/p>\r\n                <div class=\"cyclefit-ku-conditional\" data-show=\"build_type\" data-values=\"upgrade,frame_swap\" hidden>\r\n                    <p><label>Upgrade focus<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"upgrade_focus\"><\/label><\/p>\r\n                    <p><label>Current groupset<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"current_groupset\"><\/label><\/p>\r\n                <\/div>\r\n                <p><label>Timeline urgency<br>\r\n                    <select class=\"cyclefit-ku-select elementor-field elementor-field-textual\" name=\"timeline_urgency\">\r\n                        <option value=\"\"><\/option>\r\n                        <option value=\"asap\">ASAP<\/option>\r\n                        <option value=\"1_3_months\">1-3 months<\/option>\r\n                        <option value=\"3_6_months\">3-6 months<\/option>\r\n                        <option value=\"flexible\">Flexible<\/option>\r\n                    <\/select>\r\n                <\/label><\/p>\r\n            <\/fieldset>\r\n\r\n            <fieldset>\r\n                <legend>Component preferences<\/legend>\r\n                <p>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"component_prefs[]\" value=\"electronic_shifting\"> Electronic shifting<\/label>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"component_prefs[]\" value=\"disc_brakes\"> Disc brakes<\/label>\r\n                    <label><input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"component_prefs[]\" value=\"aero_wheels\"> Aero wheels<\/label>\r\n                <\/p>\r\n            <\/fieldset>\r\n\r\n            <fieldset>\r\n                <legend>Fit readiness<\/legend>\r\n                <p><label>Optional fit report upload<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" type=\"file\" name=\"fit_report\" accept=\".pdf,.jpg,.jpeg,.png\"><\/label><\/p>\r\n            <\/fieldset>\r\n\r\n            <fieldset>\r\n                <legend>Discovery<\/legend>\r\n                <p><label>How did you hear about K\u00fa?<br><input class=\"cyclefit-ku-input elementor-field elementor-field-textual\" name=\"heard_about\"><\/label><\/p>\r\n            <\/fieldset>\r\n\r\n            <p>\r\n                <label>\r\n                    <input class=\"cyclefit-ku-checkbox elementor-field\" type=\"checkbox\" name=\"consent\" value=\"1\" required>\r\n                    Ich stimme der Verarbeitung meiner Daten gem\u00e4\u00df Datenschutz zu.                <\/label>\r\n            <\/p>\r\n\r\n            <div class=\"cyclefit-ku-cta\">\r\n                <p class=\"cyclefit-ku-cta-title\">\r\n                    Ready to lock in a consult?                <\/p>\r\n                <p class=\"cyclefit-ku-cta-copy\">\r\n                    Book a bike fit consult and we will align the build with your goals.                <\/p>\r\n                                <a class=\"cyclefit-ku-button elementor-button elementor-button-link\" href=\"https:\/\/dev.bikefiteurope.com\/en\/en\/book\/\">Book a consult<\/a>\r\n            <\/div>\r\n\r\n            <p><button class=\"cyclefit-ku-button elementor-button elementor-button-link\" type=\"submit\">Send referral<\/button><\/p>\r\n        <\/form>\r\n\r\n                <script>\r\n                (function(){\r\n                    try{\r\n                        var form = document.querySelector('form.cyclefit-ku-referral');\r\n                        if(!form){ return; }\r\n                        var nonceInput = form.querySelector('input[name=\"cyclefit_ku_nonce\"]');\r\n                        if(!nonceInput){ return; }\r\n\r\n                        function setHidden(name, value){\r\n                            try{\r\n                                var el = form.querySelector('input[name=\"' + name + '\"]');\r\n                                if(el && value){ el.value = String(value); }\r\n                            }catch(e){}\r\n                        }\r\n\r\n                        function listChecked(name){\r\n                            var items = [];\r\n                            try{\r\n                                var els = form.querySelectorAll('input[name=\"' + name + '\"]');\r\n                                if(!els || !els.length){ return items; }\r\n                                Array.prototype.forEach.call(els, function(el){\r\n                                    if(el.checked){ items.push(String(el.value || '').toLowerCase()); }\r\n                                });\r\n                            }catch(e){}\r\n                            return items;\r\n                        }\r\n\r\n                        function getValue(name){\r\n                            try{\r\n                                var el = form.querySelector('[name=\"' + name + '\"]');\r\n                                if(!el){ return ''; }\r\n                                return String(el.value || '').toLowerCase();\r\n                            }catch(e){}\r\n                            return '';\r\n                        }\r\n\r\n                        function clearInputs(container){\r\n                            try{\r\n                                var inputs = container.querySelectorAll('input, select, textarea');\r\n                                Array.prototype.forEach.call(inputs, function(el){\r\n                                    if(el.type === 'checkbox' || el.type === 'radio'){\r\n                                        el.checked = false;\r\n                                    }else{\r\n                                        el.value = '';\r\n                                    }\r\n                                });\r\n                            }catch(e){}\r\n                        }\r\n\r\n                        function updateConditional(){\r\n                            try{\r\n                                var blocks = form.querySelectorAll('.cyclefit-ku-conditional');\r\n                                if(!blocks || !blocks.length){ return; }\r\n                                Array.prototype.forEach.call(blocks, function(block){\r\n                                    var show = block.getAttribute('data-show');\r\n                                    var values = (block.getAttribute('data-values') || '').toLowerCase().split(',');\r\n                                    var match = false;\r\n                                    if(show === 'riding_style'){\r\n                                        var selected = listChecked('riding_style[]');\r\n                                        values.forEach(function(v){\r\n                                            if(selected.indexOf(v) >= 0){ match = true; }\r\n                                        });\r\n                                    }else if(show){\r\n                                        var val = getValue(show);\r\n                                        values.forEach(function(v){\r\n                                            if(val === v){ match = true; }\r\n                                        });\r\n                                    }\r\n\r\n                                    if(match){\r\n                                        block.style.display = 'block';\r\n                                    }else{\r\n                                        block.style.display = 'none';\r\n                                        clearInputs(block);\r\n                                    }\r\n                                });\r\n                            }catch(e){}\r\n                        }\r\n\r\n                        try{\r\n                            var params = new URLSearchParams(window.location.search || '');\r\n                            setHidden('utm_source', params.get('utm_source'));\r\n                            setHidden('utm_medium', params.get('utm_medium'));\r\n                            setHidden('utm_campaign', params.get('utm_campaign'));\r\n                            setHidden('utm_content', params.get('utm_content'));\r\n                            setHidden('utm_term', params.get('utm_term'));\r\n                            setHidden('gclid', params.get('gclid'));\r\n                            setHidden('fbclid', params.get('fbclid'));\r\n                        }catch(e){}\r\n\r\n                        setHidden('referrer_url', document.referrer || '');\r\n                        setHidden('page_url', window.location.href || '');\r\n                        setHidden('page_path', window.location.pathname || '');\r\n                        setHidden('page_title', document.title || '');\r\n\r\n                        updateConditional();\r\n                        try{\r\n                            form.addEventListener('change', updateConditional);\r\n                            form.addEventListener('input', updateConditional);\r\n                        }catch(e){}\r\n\r\n                        var statusWrap = form.querySelector('.cyclefit-ku-nonce-status');\r\n                        var statusEl = statusWrap ? statusWrap.querySelector('strong[data-state]') : null;\r\n                        function setStatus(state, text){\r\n                            try{\r\n                                if(!statusWrap || !statusEl){ return; }\r\n                                statusEl.setAttribute('data-state', state);\r\n                                statusEl.textContent = text;\r\n                                if(state === 'warn' || state === 'fail'){\r\n                                    statusWrap.hidden = false;\r\n                                }\r\n                            }catch(e){}\r\n                        }\r\n\r\n                        setStatus('loading','loading\u2026');\r\n                        var url = \"https:\\\/\\\/dev.bikefiteurope.com\\\/wp-admin\\\/admin-ajax.php?action=cyclefit_ku_get_nonce\";\r\n                        var resp = null;\r\n                        fetch(url, { credentials: 'same-origin', cache: 'no-store' })\r\n                            .then(function(r){ resp = r; return r.json(); })\r\n                            .then(function(j){\r\n                                if(j && j.success && j.data && j.data.nonce){\r\n                                    nonceInput.value = String(j.data.nonce);\r\n\r\n                                    var reqId = j && j.data ? j.data.request_id : null;\r\n                                    var genAt = j && j.data ? j.data.generated_at : null;\r\n                                    var age = null;\r\n                                    var xCache = null;\r\n                                    var cfCache = null;\r\n                                    var bunnyCache = null;\r\n                                    try{\r\n                                        if(resp && resp.headers){\r\n                                            age = resp.headers.get('age');\r\n                                            xCache = resp.headers.get('x-cache');\r\n                                            cfCache = resp.headers.get('cf-cache-status');\r\n                                            bunnyCache = resp.headers.get('x-bunny-cache') || resp.headers.get('x-bunny-cache-status');\r\n                                        }\r\n                                    }catch(e){}\r\n\r\n                                    var meta = [];\r\n                                    if(reqId){ meta.push('id=' + String(reqId)); }\r\n                                    if(genAt){ meta.push('at=' + String(genAt)); }\r\n                                    if(age){ meta.push('age=' + String(age)); }\r\n                                    if(xCache){ meta.push('x-cache=' + String(xCache)); }\r\n                                    if(cfCache){ meta.push('cf-cache=' + String(cfCache)); }\r\n                                    if(bunnyCache){ meta.push('bunny=' + String(bunnyCache)); }\r\n\r\n                                    var cacheHint = false;\r\n                                    try{\r\n                                        if(age && parseInt(String(age), 10) > 0){ cacheHint = true; }\r\n                                        if(xCache && String(xCache).toUpperCase().indexOf('HIT') >= 0){ cacheHint = true; }\r\n                                        if(cfCache && String(cfCache).toUpperCase().indexOf('HIT') >= 0){ cacheHint = true; }\r\n                                        if(bunnyCache && String(bunnyCache).toUpperCase().indexOf('HIT') >= 0){ cacheHint = true; }\r\n                                    }catch(e){}\r\n\r\n                                    if(cacheHint){\r\n                                        setStatus('warn', 'ok (cache header indicates HIT) ' + (meta.length ? '[' + meta.join(' ') + ']' : ''));\r\n                                    }else{\r\n                                        setStatus('ok', 'ok ' + (meta.length ? '[' + meta.join(' ') + ']' : ''));\r\n                                    }\r\n                                }else{\r\n                                    setStatus('fail','failed (check caching rules for admin-ajax.php)');\r\n                                }\r\n                            })\r\n                            .catch(function(){ setStatus('fail','failed (network\/caching)'); });\r\n\r\n                        \/\/ Debug-only self-test: fetch twice and compare request_id (detect cached admin-ajax)\r\n                        try{\r\n                            var selfBtn = statusWrap ? statusWrap.querySelector('.cyclefit-ku-nonce-selftest-btn') : null;\r\n                            var selfStatus = statusWrap ? statusWrap.querySelector('.cyclefit-ku-nonce-selftest-status') : null;\r\n                            var selfOut = statusWrap ? statusWrap.querySelector('.cyclefit-ku-nonce-selftest-output') : null;\r\n                            if(selfBtn && selfStatus && selfOut){\r\n                                function fmtHeaders(h){\r\n                                    var pick = ['cache-control','pragma','age','x-cache','x-cache-hits','cf-cache-status','x-bunny-cache','x-bunny-cache-status','server'];\r\n                                    var o = {};\r\n                                    pick.forEach(function(k){\r\n                                        try{ var v = h.get(k); if(v){ o[k] = v; } }catch(e){}\r\n                                    });\r\n                                    return o;\r\n                                }\r\n                                async function hitOnce(){\r\n                                    var u = url + (url.indexOf('?') >= 0 ? '&' : '?') + '_t=' + String(Date.now()) + '_' + String(Math.random()).slice(2);\r\n                                    var r = await fetch(u, { credentials: 'same-origin', cache: 'no-store' });\r\n                                    var headers = fmtHeaders(r.headers);\r\n                                    var text = await r.text();\r\n                                    var json = null;\r\n                                    try{ json = JSON.parse(text); }catch(e){ json = { parse_error: String(e), raw: text }; }\r\n                                    return { url: u, status: r.status, headers: headers, json: json };\r\n                                }\r\n                                selfBtn.addEventListener('click', function(){\r\n                                    (async function(){\r\n                                        selfBtn.disabled = true;\r\n                                        selfStatus.textContent = 'Running\u2026';\r\n                                        selfStatus.setAttribute('data-state', 'running');\r\n                                        selfOut.hidden = true;\r\n                                        selfOut.textContent = '';\r\n                                        try{\r\n                                            var a = await hitOnce();\r\n                                            await new Promise(function(res){ setTimeout(res, 250); });\r\n                                            var b = await hitOnce();\r\n                                            var aId = a && a.json && a.json.data ? a.json.data.request_id : null;\r\n                                            var bId = b && b.json && b.json.data ? b.json.data.request_id : null;\r\n                                            var likelyCached = (aId && bId && String(aId) === String(bId));\r\n                                            if(likelyCached){\r\n                                                selfStatus.textContent = 'Likely cached (request_id repeated)';\r\n                                                selfStatus.setAttribute('data-state', 'fail');\r\n                                            }else if(aId && bId){\r\n                                                selfStatus.textContent = 'OK (request_id differs)';\r\n                                                selfStatus.setAttribute('data-state', 'ok');\r\n                                            }else{\r\n                                                selfStatus.textContent = 'Inconclusive (no request_id)';\r\n                                                selfStatus.setAttribute('data-state', 'fail');\r\n                                            }\r\n                                            selfOut.textContent = JSON.stringify({ first: a, second: b, analysis: { first_request_id: aId, second_request_id: bId, likely_cached: likelyCached } }, null, 2);\r\n                                            selfOut.hidden = false;\r\n                                        }catch(e){\r\n                                            selfStatus.textContent = 'Failed';\r\n                                            selfStatus.setAttribute('data-state', 'fail');\r\n                                            selfOut.textContent = String(e && e.stack ? e.stack : e);\r\n                                            selfOut.hidden = false;\r\n                                        }finally{\r\n                                            selfBtn.disabled = false;\r\n                                        }\r\n                                    })();\r\n                                });\r\n                            }\r\n                        }catch(e){}\r\n                    }catch(e){}\r\n                })();\r\n                <\/script>\r\n        \n<h2>Was nach dem Absenden passiert<\/h2>\n<p>Deine Anfrage wird als strukturierter Lead in WordPress gespeichert und mit dem relevanten Kontext per E-Mail weitergegeben. Das Formular ist so aufgebaut, dass die wichtigen Punkte schon drin sind: Fahrerprofil, Build-Absicht, Bike-Kontext, Zeitfenster und Attribution.<\/p>\n<p>Wenn du bereits sicher bist, dass ein Termin der bessere naechste Schritt ist, zwinge dich nicht in den Referral Weg. Nutze die Buchung.<\/p>\n<p><a href=\"\/buchen\">Termin buchen<\/a><\/p>\n<p><!-- markdownlint-enable MD033 --><\/p>\n","protected":false},"excerpt":{"rendered":"<p>K\u00fa Fit Session Anfrage Nutze diese K\u00fa Fit Session Anfrage, wenn du deine Fit-, Fahr- und Aufbau-Situation strukturiert an CycleFit Europe senden willst. Das Formular ist fuer Fahrer gedacht, die vor Rahmen-, Cockpit- oder Kaufentscheidungen eine klarere K\u00fa Richtung brauchen. Wenn du die Situation lieber zuerst in einem Termin besprechen willst, nutze stattdessen die Buchung. [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-3307","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/dev.bikefiteurope.com\/en\/wp-json\/wp\/v2\/pages\/3307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev.bikefiteurope.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dev.bikefiteurope.com\/en\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/dev.bikefiteurope.com\/en\/wp-json\/wp\/v2\/comments?post=3307"}],"version-history":[{"count":2,"href":"https:\/\/dev.bikefiteurope.com\/en\/wp-json\/wp\/v2\/pages\/3307\/revisions"}],"predecessor-version":[{"id":3451,"href":"https:\/\/dev.bikefiteurope.com\/en\/wp-json\/wp\/v2\/pages\/3307\/revisions\/3451"}],"wp:attachment":[{"href":"https:\/\/dev.bikefiteurope.com\/en\/wp-json\/wp\/v2\/media?parent=3307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}