{"id":7,"date":"2025-08-07T12:18:37","date_gmt":"2025-08-07T10:18:37","guid":{"rendered":"http:\/\/s1060402292.online.de\/?page_id=7"},"modified":"2026-04-04T11:45:29","modified_gmt":"2026-04-04T09:45:29","slug":"home","status":"publish","type":"page","link":"https:\/\/metrope.at\/naxeon\/","title":{"rendered":"Home"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8220;1&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_enable_color=&#8220;off&#8220; custom_margin=&#8220;0px||0px||false|false&#8220; custom_padding=&#8220;0px|0px|0px|0px|false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_row _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_image=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-Pro-mit-Logo.jpg&#8220; background_position=&#8220;bottom_center&#8220; width=&#8220;100%&#8220; width_tablet=&#8220;&#8220; width_phone=&#8220;100%&#8220; width_last_edited=&#8220;on|desktop&#8220; max_width=&#8220;100%&#8220; height=&#8220;100vh&#8220; height_tablet=&#8220;90vh&#8220; height_phone=&#8220;100vh&#8220; height_last_edited=&#8220;on|tablet&#8220; custom_margin=&#8220;0px||||false|false&#8220; custom_padding=&#8220;0px||||false|false&#8220; background_last_edited=&#8220;on|phone&#8220; background_image_phone=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-mobile-bg.jpg&#8220; background_enable_image_phone=&#8220;on&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;4_4&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/NAXEON-LOGO_weiss_schwarz_nur_schrift.png&#8220; title_text=&#8220;NAXEON-LOGO_weiss_schwarz_nur_schrift&#8220; align_tablet=&#8220;&#8220; align_phone=&#8220;center&#8220; align_last_edited=&#8220;on|phone&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; positioning=&#8220;absolute&#8220; position_origin_a=&#8220;top_right&#8220; vertical_offset=&#8220;22vw&#8220; position_origin_a_tablet=&#8220;top_right&#8220; position_origin_a_phone=&#8220;top_right&#8220; position_origin_a_last_edited=&#8220;on|phone&#8220; position_origin_f_tablet=&#8220;&#8220; position_origin_f_phone=&#8220;&#8220; position_origin_f_last_edited=&#8220;on|phone&#8220; position_origin_r_tablet=&#8220;&#8220; position_origin_r_phone=&#8220;&#8220; position_origin_r_last_edited=&#8220;on|phone&#8220; width=&#8220;33%&#8220; width_tablet=&#8220;33%&#8220; width_phone=&#8220;80%&#8220; width_last_edited=&#8220;on|phone&#8220; custom_margin=&#8220;|5vw|||false|false&#8220; custom_margin_tablet=&#8220;||||false|false&#8220; custom_margin_phone=&#8220;85vh||||false|false&#8220; custom_margin_last_edited=&#8220;on|phone&#8220; positioning_tablet=&#8220;absolute&#8220; positioning_phone=&#8220;none&#8220; positioning_last_edited=&#8220;on|phone&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][et_pb_button button_url=&#8220;#booking-form&#8220; button_text=&#8220;JETZT PROBEFAHRT BUCHEN&#8220; button_alignment=&#8220;center&#8220; module_class=&#8220;button&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; custom_button=&#8220;on&#8220; button_text_color=&#8220;#FFFFFF&#8220; button_bg_color=&#8220;#000000&#8243; button_font=&#8220;|800|||||||&#8220; positioning=&#8220;absolute&#8220; vertical_offset=&#8220;20vw&#8220; horizontal_offset=&#8220;34px&#8220; position_origin_a_tablet=&#8220;&#8220; position_origin_a_phone=&#8220;&#8220; position_origin_a_last_edited=&#8220;on|phone&#8220; position_origin_f_tablet=&#8220;&#8220; position_origin_f_phone=&#8220;&#8220; position_origin_f_last_edited=&#8220;on|phone&#8220; position_origin_r_tablet=&#8220;&#8220; position_origin_r_phone=&#8220;&#8220; position_origin_r_last_edited=&#8220;on|phone&#8220; background_layout=&#8220;dark&#8220; custom_margin=&#8220;7vh|||10vw|false|false&#8220; custom_margin_tablet=&#8220;84vh|||auto|false|false&#8220; custom_margin_phone=&#8220;14vh||||false|false&#8220; custom_margin_last_edited=&#8220;on|phone&#8220; custom_padding=&#8220;||||false|false&#8220; positioning_tablet=&#8220;none&#8220; positioning_phone=&#8220;none&#8220; positioning_last_edited=&#8220;on|phone&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_button][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8220;1&#8243; module_class=&#8220;hero-section&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_color=&#8220;#000000&#8243; custom_margin=&#8220;0px||0px||false|false&#8220; custom_padding=&#8220;||50px||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_row column_structure=&#8220;2_5,3_5&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width_tablet=&#8220;90%&#8220; width_phone=&#8220;95%&#8220; width_last_edited=&#8220;on|phone&#8220; max_width=&#8220;1920px&#8220; custom_margin=&#8220;||||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;2_5&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_heading title=&#8220;ERLEBE DIE &#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; title_font=&#8220;&#8211;et_global_heading_font|800|||||||&#8220; title_text_color=&#8220;#FFFFFF&#8220; background_color=&#8220;RGBA(255,255,255,0)&#8220; width=&#8220;100%&#8220; custom_margin=&#8220;0px||0px||false|false&#8220; custom_padding=&#8220;3vw|2rem|0px|4rem|false|false&#8220; custom_padding_tablet=&#8220;3vw|2rem|0px|4rem|false|false&#8220; custom_padding_phone=&#8220;3vw|0rem|0px|0rem|false|false&#8220; custom_padding_last_edited=&#8220;on|phone&#8220; custom_css_free_form=&#8220;selector h1 {||  font-size: 2.5rem;||  line-height: 4rem;||}&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_heading][et_pb_heading title=&#8220;NAXEON I AM&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; title_font=&#8220;&#8211;et_global_heading_font|800|||||||&#8220; title_text_color=&#8220;#FFFFFF&#8220; background_color=&#8220;RGBA(255,255,255,0)&#8220; width=&#8220;100%&#8220; custom_margin=&#8220;||0px||false|false&#8220; custom_padding=&#8220;|2rem|0px|4rem|false|false&#8220; custom_padding_tablet=&#8220;|2rem|0px|4rem|false|false&#8220; custom_padding_phone=&#8220;|0rem||0rem|false|false&#8220; custom_padding_last_edited=&#8220;on|phone&#8220; custom_css_free_form=&#8220;selector h1 {||  font-size: 2.5rem;||  line-height: 4rem;||}&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_heading][et_pb_text _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_color=&#8220;RGBA(255,255,255,0)&#8220; width=&#8220;100%&#8220; custom_margin=&#8220;1vw||||false|false&#8220; custom_padding=&#8220;|2rem|8px|4rem|false|false&#8220; custom_padding_tablet=&#8220;|2rem|8px|4rem|false|false&#8220; custom_padding_phone=&#8220;|0rem|8px|0rem|false|false&#8220; custom_padding_last_edited=&#8220;on|phone&#8220; custom_css_free_form=&#8220;selector {||  font-size: 1.2rem;||  line-height: 2.2rem;||  font-weight: 800;||}&#8220; global_colors_info=&#8220;{}&#8220;]<\/p>\n<p><span style=\"color: #ffffff;\">Du kannst die Naxeon jetzt in unserem Store kennenlernen und Probe fahren.<\/span><\/p>\n<p>[\/et_pb_text][et_pb_button button_url=&#8220;https:\/\/metrope.at\/naxeon\/iampro\/&#8220; button_text=&#8220;Mehr erfahren&#8220; button_alignment=&#8220;center&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_button][\/et_pb_column][et_pb_column type=&#8220;3_5&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; custom_padding=&#8220;||||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-quer.jpg&#8220; alt=&#8220;Naxeon I AM&#8220; title_text=&#8220;Naxeon I AM quer&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8220;on&#8220; gutter_width=&#8220;1&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;100%&#8220; width_tablet=&#8220;100%&#8220; width_phone=&#8220;100%&#8220; width_last_edited=&#8220;on|phone&#8220; max_width=&#8220;2560px&#8220; module_alignment=&#8220;center&#8220; custom_margin=&#8220;0px||0px||false|false&#8220; custom_margin_tablet=&#8220;0px||0px||false|false&#8220; custom_margin_phone=&#8220;4vh||||false|false&#8220; custom_margin_last_edited=&#8220;on|phone&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;4_4&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_video src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Official-website-homepage-video16\uff1a9\uff081\uff09.mp4&#8243; disabled_on=&#8220;on|off|off&#8220; module_id=&#8220;electricVideo&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;80%&#8220; width_tablet=&#8220;80%&#8220; width_phone=&#8220;80%&#8220; width_last_edited=&#8220;on|phone&#8220; module_alignment=&#8220;center&#8220; custom_margin=&#8220;|auto||auto|false|false&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_video][et_pb_video src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Official-website-homepage-video9\uff1a16\uff081\uff09.mp4&#8243; disabled_on=&#8220;off|on|on&#8220; module_id=&#8220;electricVideo_mob&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_video][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8220;1_3,1_3,1_3&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;100%&#8220; max_width=&#8220;2560px&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;1_3&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-back.jpg&#8220; title_text=&#8220;Naxeon I AM back&#8220; align_tablet=&#8220;center&#8220; align_phone=&#8220;center&#8220; align_last_edited=&#8220;on|tablet&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; custom_margin=&#8220;|auto||auto|false|false&#8220; custom_margin_tablet=&#8220;|auto||auto|false|false&#8220; custom_margin_phone=&#8220;|auto||auto|false|false&#8220; custom_margin_last_edited=&#8220;on|phone&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8220;1_3&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_heading title=&#8220;Ein Design, das Morgen definiert&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; title_font=&#8220;|||on|||||&#8220; title_text_color=&#8220;#FFFFFF&#8220; title_font_size=&#8220;3rem&#8220; title_line_height=&#8220;1.2em&#8220; custom_margin=&#8220;5vw|2vw|2vw|2vw|false|false&#8220; custom_margin_tablet=&#8220;1vw||1vw||false|false&#8220; custom_margin_phone=&#8220;1vw||1vw||false|false&#8220; custom_margin_last_edited=&#8220;on|tablet&#8220; title_font_size_tablet=&#8220;3rem&#8220; title_font_size_phone=&#8220;3rem&#8220; title_font_size_last_edited=&#8220;on|desktop&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_heading][dsm_perspective_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-detail-rueckseite.jpg&#8220; alt=&#8220;Naxeon I AM detail r\u00fcckseite&#8220; title_text=&#8220;Naxeon I AM detail r\u00fcckseite&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/dsm_perspective_image][\/et_pb_column][et_pb_column type=&#8220;1_3&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-front.jpg&#8220; title_text=&#8220;Naxeon I AM front&#8220; align=&#8220;center&#8220; align_tablet=&#8220;center&#8220; align_phone=&#8220;&#8220; align_last_edited=&#8220;on|desktop&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;100%&#8220; max_width=&#8220;2560px&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;4_4&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-double-Totale-cropped.jpg&#8220; alt=&#8220;Naxeon I AM&#8220; title_text=&#8220;Naxeon I AM style&#8220; src_tablet=&#8220;&#8220; src_phone=&#8220;&#8220; src_last_edited=&#8220;on|desktop&#8220; disabled_on=&#8220;on|on|off&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][et_pb_image alt=&#8220;Naxeon I AM&#8220; title_text=&#8220;Naxeon I AM style&#8220; src_tablet=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-style.jpg&#8220; src_phone=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-style.jpg&#8220; src_last_edited=&#8220;on|phone&#8220; disabled_on=&#8220;off|off|on&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][et_pb_text _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; text_text_color=&#8220;#FFFFFF&#8220; text_font_size=&#8220;1.4rem&#8220; text_letter_spacing=&#8220;2px&#8220; text_line_height=&#8220;1.8em&#8220; header_text_color=&#8220;#FFFFFF&#8220; header_font_size=&#8220;3rem&#8220; header_line_height=&#8220;2.1em&#8220; header_2_font_size=&#8220;2.3rem&#8220; header_2_line_height=&#8220;1.8em&#8220; custom_margin=&#8220;|10vw||10vw|false|true&#8220; custom_margin_tablet=&#8220;|2vw||2vw|false|true&#8220; custom_margin_phone=&#8220;|2vw||2vw|false|true&#8220; custom_margin_last_edited=&#8220;on|phone&#8220; text_font_size_tablet=&#8220;1.4rem&#8220; text_font_size_phone=&#8220;1.4rem&#8220; text_font_size_last_edited=&#8220;on|desktop&#8220; global_colors_info=&#8220;{}&#8220;]<\/p>\n<h2 data-start=\"129\" data-end=\"197\"><strong data-start=\"129\" data-end=\"195\">NAXEON I AM \u2013 Elektromobilit\u00e4t in ihrer sch\u00f6nsten Form<\/strong><\/h2>\n<p data-start=\"199\" data-end=\"563\">NAXEON I AM ist mehr als nur ein E-Motorrad \u2013 es ist ein Statement f\u00fcr Design, Innovation und nachhaltige Mobilit\u00e4t.<\/p>\n<p data-start=\"199\" data-end=\"563\">Jede Linie, jede Kurve ist mit h\u00f6chster Pr\u00e4zision entworfen, um Aerodynamik und visuelle Anziehungskraft zu vereinen. Futuristisch, mutig und essenziell verk\u00f6rpert NAXEON I AM den Anspruch, die urbane Fortbewegung auf ein neues Level zu heben.<\/p>\n<p>[\/et_pb_text][dsm_image_accordion ia_height=&#8220;601px&#8220; ia_direction_tablet=&#8220;vertical&#8220; ia_direction_phone=&#8220;vertical&#8220; ia_direction_last_edited=&#8220;on|tablet&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width_tablet=&#8220;&#8220; width_phone=&#8220;&#8220; width_last_edited=&#8220;on|tablet&#8220; height=&#8220;500px&#8220; global_colors_info=&#8220;{}&#8220;][dsm_image_accordion_child expanded_item=&#8220;on&#8220; image_accordion_src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-Detail-Licht-quer.jpg&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/dsm_image_accordion_child][dsm_image_accordion_child image_accordion_src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-Detail-Lenker-1024&#215;683.jpg&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/dsm_image_accordion_child][dsm_image_accordion_child image_accordion_src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-Detail-Rad2.jpg&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/dsm_image_accordion_child][dsm_image_accordion_child image_accordion_src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-Detail-Display.jpg&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/dsm_image_accordion_child][dsm_image_accordion_child image_accordion_src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-Detail.jpg&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/dsm_image_accordion_child][\/dsm_image_accordion][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;100%&#8220; max_width=&#8220;1920px&#8220; custom_margin=&#8220;3vw||||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;4_4&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8220;1&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_color=&#8220;#000000&#8243; custom_css_free_form=&#8220;selector {||  overflow-x: hidden;||}&#8220; collapsed=&#8220;off&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_row _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_color=&#8220;#000000&#8243; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;4_4&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/NAXEON-LOGO_weiss_schwarz_mit_schrift_horiz-1.png&#8220; title_text=&#8220;NAXEON-LOGO_weiss_schwarz_mit_schrift_horiz&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;71%&#8220; scroll_horizontal_motion_enable=&#8220;on&#8220; scroll_horizontal_motion=&#8220;5|63|63|100|3.5|0|0&#8243; motion_trigger_start=&#8220;top&#8220; custom_css_free_form=&#8220;selector, selector img {||  overflow: hidden;||}&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8220;1&#8243; disabled_on=&#8220;off|off|off&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_color=&#8220;RGBA(255,255,255,0)&#8220; custom_padding=&#8220;0px||0px||false|false&#8220; collapsed=&#8220;off&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_row use_custom_gutter=&#8220;on&#8220; gutter_width=&#8220;1&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_color=&#8220;#000000&#8243; width=&#8220;auto&#8220; max_width=&#8220;none&#8220; custom_margin=&#8220;||0px||false|false&#8220; custom_padding=&#8220;0px||0px||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;4_4&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_image src=&#8220;https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-dynamisch.jpg&#8220; alt=&#8220;Naxeon I AM dynamisch. Nachtfahrt&#8220; title_text=&#8220;Naxeon I AM dynamisch&#8220; align=&#8220;center&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;80%&#8220; width_tablet=&#8220;100%&#8220; width_phone=&#8220;100%&#8220; width_last_edited=&#8220;on|phone&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_image][et_pb_button button_url=&#8220;https:\/\/metrope.at\/naxeon\/iampro\/&#8220; button_text=&#8220;Mehr erfahren&#8220; button_alignment=&#8220;center&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; custom_margin=&#8220;5vw||||false|false&#8220; locked=&#8220;off&#8220; global_colors_info=&#8220;{}&#8220;][\/et_pb_button][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8220;1&#8243; module_id=&#8220;booking-form&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; background_color=&#8220;#000000&#8243; custom_padding=&#8220;0px||0px||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_row use_custom_gutter=&#8220;on&#8220; gutter_width=&#8220;1&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;52%&#8220; width_tablet=&#8220;100%&#8220; width_phone=&#8220;100%&#8220; width_last_edited=&#8220;on|phone&#8220; custom_margin=&#8220;5vh||||false|false&#8220; custom_margin_tablet=&#8220;2vh||||false|false&#8220; custom_margin_phone=&#8220;0vh||||false|false&#8220; custom_margin_last_edited=&#8220;on|phone&#8220; custom_padding=&#8220;0px||||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;4_4&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_code _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; hover_enabled=&#8220;0&#8243; global_colors_info=&#8220;{}&#8220; sticky_enabled=&#8220;0&#8243;]<!-- Buchungsformular: Schwarzer Hintergrund, wei\u00dfe Felder --><!-- [et_pb_line_break_holder] --><\/p>\n<style><!-- [et_pb_line_break_holder] -->.booking-form-bg {<!-- [et_pb_line_break_holder] -->  background: #111;<!-- [et_pb_line_break_holder] -->  padding: 2.5rem 1rem;<!-- [et_pb_line_break_holder] -->  border-radius: 1rem;<!-- [et_pb_line_break_holder] -->  color: #fff;<!-- [et_pb_line_break_holder] -->  max-width: 900px;<!-- [et_pb_line_break_holder] -->  margin: 2rem auto;<!-- [et_pb_line_break_holder] -->  font-family: 'Inter', 'Arial', sans-serif;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-form-bg h2 {<!-- [et_pb_line_break_holder] -->  font-size: 2rem;<!-- [et_pb_line_break_holder] -->  font-weight: 700;<!-- [et_pb_line_break_holder] -->  margin-bottom: 2rem;<!-- [et_pb_line_break_holder] -->  letter-spacing: 0.01em;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-row {<!-- [et_pb_line_break_holder] -->  display: flex;<!-- [et_pb_line_break_holder] -->  flex-wrap: wrap;<!-- [et_pb_line_break_holder] -->  gap: 1.2rem;<!-- [et_pb_line_break_holder] -->  margin-bottom: 1.1rem;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-col {<!-- [et_pb_line_break_holder] -->  flex: 1 1 300px;<!-- [et_pb_line_break_holder] -->  min-width: 0;<!-- [et_pb_line_break_holder] -->  display: flex;<!-- [et_pb_line_break_holder] -->  flex-direction: column;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-label {<!-- [et_pb_line_break_holder] -->  font-size: 1rem;<!-- [et_pb_line_break_holder] -->  font-weight: 500;<!-- [et_pb_line_break_holder] -->  margin-bottom: 0.3em;<!-- [et_pb_line_break_holder] -->  color: #fff;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-required {<!-- [et_pb_line_break_holder] -->  color: #f36a3b;<!-- [et_pb_line_break_holder] -->  font-size: 0.95em;<!-- [et_pb_line_break_holder] -->  margin-left: 6px;<!-- [et_pb_line_break_holder] -->  font-weight: 400;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-form-bg input,<!-- [et_pb_line_break_holder] -->.booking-form-bg select {<!-- [et_pb_line_break_holder] -->  background: transparent;<!-- [et_pb_line_break_holder] -->  border: 2px solid #fff;<!-- [et_pb_line_break_holder] -->  color: #fff;<!-- [et_pb_line_break_holder] -->  padding: 0.7em 1em;<!-- [et_pb_line_break_holder] -->  border-radius: 0.5em;<!-- [et_pb_line_break_holder] -->  margin-bottom: 0.5em;<!-- [et_pb_line_break_holder] -->  font-size: 1.1em;<!-- [et_pb_line_break_holder] -->  outline: none;<!-- [et_pb_line_break_holder] -->  transition: border-color 0.2s;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-form-bg input::placeholder,<!-- [et_pb_line_break_holder] -->.booking-form-bg select:invalid { color: #bbb; }<!-- [et_pb_line_break_holder] -->.booking-form-bg input:focus,<!-- [et_pb_line_break_holder] -->.booking-form-bg select:focus {<!-- [et_pb_line_break_holder] -->  border-color: #f6ff05;<!-- [et_pb_line_break_holder] -->  background: #181818;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-hint {<!-- [et_pb_line_break_holder] -->  color: #888;<!-- [et_pb_line_break_holder] -->  font-size: 0.95em;<!-- [et_pb_line_break_holder] -->  margin-top: -0.2em;<!-- [et_pb_line_break_holder] -->  margin-bottom: 1em;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-submit {<!-- [et_pb_line_break_holder] -->  display: block;<!-- [et_pb_line_break_holder] -->  margin: 2.5rem 0 0 auto;<!-- [et_pb_line_break_holder] -->  padding: 0.95em 2.4em;<!-- [et_pb_line_break_holder] -->  background: #fff;<!-- [et_pb_line_break_holder] -->  color: #111;<!-- [et_pb_line_break_holder] -->  font-weight: 700;<!-- [et_pb_line_break_holder] -->  border-radius: 0.5em;<!-- [et_pb_line_break_holder] -->  border: none;<!-- [et_pb_line_break_holder] -->  font-size: 1.1em;<!-- [et_pb_line_break_holder] -->  cursor: pointer;<!-- [et_pb_line_break_holder] -->  transition: background 0.2s, color 0.2s;<!-- [et_pb_line_break_holder] -->  letter-spacing: 0.05em;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.booking-submit:hover {<!-- [et_pb_line_break_holder] -->  background: #f6ff05;<!-- [et_pb_line_break_holder] -->  color: #111;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->@media (max-width: 720px) {<!-- [et_pb_line_break_holder] -->  .booking-row { flex-direction: column;}<!-- [et_pb_line_break_holder] -->  .booking-col { width: 100%;<!-- [et_pb_line_break_holder] -->  flex: 1 1 0px;}<!-- [et_pb_line_break_holder] -->  .booking-form-bg { padding: 1.2rem 0.5rem; }<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><\/style>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"booking-form-bg\"><!-- [et_pb_line_break_holder] -->  <\/p>\n<h2>Probefahrt buchen<\/h2>\n<p><!-- [et_pb_line_break_holder] -->  <\/p>\n<form id=\"booking-form\" autocomplete=\"off\"><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"booking-row\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"booking-col\"><!-- [et_pb_line_break_holder] -->        <label class=\"booking-label\" for=\"vorname\">Vorname<\/label><!-- [et_pb_line_break_holder] -->        <input id=\"vorname\" name=\"vorname\" type=\"text\" autocomplete=\"given-name\" required><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"booking-col\"><!-- [et_pb_line_break_holder] -->        <label class=\"booking-label\" for=\"nachname\">Nachname<\/label><!-- [et_pb_line_break_holder] -->        <input id=\"nachname\" name=\"nachname\" type=\"text\" autocomplete=\"family-name\" required><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"booking-row\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"booking-col\"><!-- [et_pb_line_break_holder] -->        <label class=\"booking-label\" for=\"email\">Email <span class=\"booking-required\"><\/span><\/label><!-- [et_pb_line_break_holder] -->        <input id=\"email\" name=\"email\" type=\"email\" required><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"booking-col\"><!-- [et_pb_line_break_holder] -->        <label class=\"booking-label\" for=\"telefon\">Telefonnummer<\/label><!-- [et_pb_line_break_holder] -->        <input id=\"telefon\" name=\"telefon\" type=\"tel\" autocomplete=\"tel\" placeholder=\"optional\"><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"booking-row\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"booking-col\" style=\"flex:2\"><!-- [et_pb_line_break_holder] -->        <label class=\"booking-label\" for=\"modell\">Fahrzeug ausw\u00e4hlen <span class=\"booking-required\"><\/span><\/label><!-- [et_pb_line_break_holder] -->        <select id=\"modell\" name=\"modell\" required><!-- [et_pb_line_break_holder] --><option value=\"\">Modell w\u00e4hlen<\/option><!-- [et_pb_line_break_holder] -->        <\/select><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"booking-hint\"><\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"booking-row\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"booking-col\"><!-- [et_pb_line_break_holder] -->        <label class=\"booking-label\" for=\"datum\">Datum w\u00e4hlen <span class=\"booking-required\"><\/span><\/label><!-- [et_pb_line_break_holder] -->        <input id=\"datum\" name=\"datum\" type=\"text\" placeholder=\"Datum w\u00e4hlen\" required autocomplete=\"off\"><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"booking-col\"><!-- [et_pb_line_break_holder] -->        <label class=\"booking-label\" for=\"uhrzeit\">Uhrzeit w\u00e4hlen<\/label><!-- [et_pb_line_break_holder] -->        <select id=\"uhrzeit\" name=\"uhrzeit\" required><!-- [et_pb_line_break_holder] --><option value=\"\">Uhrzeit w\u00e4hlen<\/option><!-- [et_pb_line_break_holder] -->        <\/select><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <button class=\"booking-submit\" type=\"submit\">ABSENDEN<\/button><!-- [et_pb_line_break_holder] -->  <\/form>\n<p><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] -->[\/et_pb_code][et_pb_code disabled_on=&#8220;on|on|on&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; disabled=&#8220;on&#8220; global_colors_info=&#8220;{}&#8220;]<!-- 1) Firebase SDKs (m\u00fcssen VOR deinem JS kommen) --><!-- [et_pb_line_break_holder] --><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.6.11\/firebase-app-compat.js\"><\/script><!-- [et_pb_line_break_holder] --><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.6.11\/firebase-firestore-compat.js\"><\/script><!-- [et_pb_line_break_holder] --><link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr\/dist\/flatpickr.min.css\"><!-- [et_pb_line_break_holder] --><script src=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr\"><\/script><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><script><!-- [et_pb_line_break_holder] -->jQuery(function($){<!-- [et_pb_line_break_holder] -->  console.log(\"???? GF\u2192Firestore init\u2026\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ 2) Firebase initialisieren<!-- [et_pb_line_break_holder] -->  const firebaseConfig = {<!-- [et_pb_line_break_holder] -->    apiKey:    \"AIzaSyDWadIJyfEEcXxn-Sjp7GWSoYnLYgkud44\",<!-- [et_pb_line_break_holder] -->    authDomain:\"e-moto-db.firebaseapp.com\",<!-- [et_pb_line_break_holder] -->    projectId: \"e-moto-db\",<!-- [et_pb_line_break_holder] -->    storageBucket:\"e-moto-db.appspot.com\",<!-- [et_pb_line_break_holder] -->    messagingSenderId:\"509189050847\",<!-- [et_pb_line_break_holder] -->    appId:     \"1:509189050847:web:a4aa03092a69c38310746a\"<!-- [et_pb_line_break_holder] -->  };<!-- [et_pb_line_break_holder] -->  if (!firebase.apps.length) firebase.initializeApp(firebaseConfig);<!-- [et_pb_line_break_holder] -->  const db = firebase.firestore();<!-- [et_pb_line_break_holder] -->  console.log(\"???? Firebase bereit\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ 3) State\u2010Variablen<!-- [et_pb_line_break_holder] -->  let bookedList     = [];   \/\/ aus Firestore geladene Buchungen<!-- [et_pb_line_break_holder] -->  let lastSubmission = null; \/\/ zwischengespeicherte GF\u2010Daten<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ 4) Buchungen laden<!-- [et_pb_line_break_holder] -->  function fetchBooked(){<!-- [et_pb_line_break_holder] -->    return db.collection(\"buchungen\").get()<!-- [et_pb_line_break_holder] -->      .then(snap => {<!-- [et_pb_line_break_holder] -->        bookedList = snap.docs.map(d => d.data());<!-- [et_pb_line_break_holder] -->      })<!-- [et_pb_line_break_holder] -->      .catch(err => {<!-- [et_pb_line_break_holder] -->        console.error(\"\u274c Fehler beim Laden Buchungen:\", err);<!-- [et_pb_line_break_holder] -->        bookedList = [];<!-- [et_pb_line_break_holder] -->      });<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->function updateTimes() {<!-- [et_pb_line_break_holder] -->    const model = $(\"#modell\").val();<!-- [et_pb_line_break_holder] -->    const date  = $(\"#datum\").val();<!-- [et_pb_line_break_holder] -->    const $time = $(\"#uhrzeit\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Alle Optionen reaktivieren<!-- [et_pb_line_break_holder] -->    $time.find(\"option\")<!-- [et_pb_line_break_holder] -->      .prop(\"disabled\", false)<!-- [et_pb_line_break_holder] -->      .css(\"opacity\", 1);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Gebuchte Slots ausgrauen<!-- [et_pb_line_break_holder] -->    bookedList.forEach(b => {<!-- [et_pb_line_break_holder] -->      if (b.modell === model && b.datum === date) {<!-- [et_pb_line_break_holder] -->        $time.find(\"option\").filter((_,opt)=> opt.value === b.uhrzeit)<!-- [et_pb_line_break_holder] -->             .prop(\"disabled\", true)<!-- [et_pb_line_break_holder] -->             .css(\"opacity\", 0.5);<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function validateSelection(changedField) {<!-- [et_pb_line_break_holder] -->  const model = $(\"#modell\").val();<!-- [et_pb_line_break_holder] -->  const date  = $(\"#datum\").val();<!-- [et_pb_line_break_holder] -->  const time  = $(\"#uhrzeit\").val();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Debug-Log<!-- [et_pb_line_break_holder] -->  console.log(`???? validateSelection(${changedField}) \u2192`, { model, date, time });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Nur pr\u00fcfen, wenn alle drei Felder bef\u00fcllt sind<!-- [et_pb_line_break_holder] -->  if (!model || !date || !time) return;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Konflikt checken<!-- [et_pb_line_break_holder] -->  const conflict = bookedList.some(b =><!-- [et_pb_line_break_holder] -->    b.modell  === model &&<!-- [et_pb_line_break_holder] -->    b.datum   === date  &&<!-- [et_pb_line_break_holder] -->    b.uhrzeit === time<!-- [et_pb_line_break_holder] -->  );<!-- [et_pb_line_break_holder] -->  console.log(\"\u26a0\ufe0f Konflikt?\", conflict);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  if (conflict) {<!-- [et_pb_line_break_holder] -->    alert(\"Dieses Fahrzeug ist zum Wunschtermin leider nicht verf\u00fcgbar.\\nBitte w\u00e4hlen Sie einen anderen Termin.\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Zeit immer zur\u00fccksetzen<!-- [et_pb_line_break_holder] -->    $(\"#uhrzeit\").val(\"\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Und je nachdem, welches Feld Du gerade ge\u00e4ndert hast,<!-- [et_pb_line_break_holder] -->    \/\/ das\/die anderen beiden zur\u00fccksetzen:<!-- [et_pb_line_break_holder] -->    if (changedField === \"model\") {<!-- [et_pb_line_break_holder] -->      $(\"#datum\").val(\"\");<!-- [et_pb_line_break_holder] -->    } else if (changedField === \"date\") {<!-- [et_pb_line_break_holder] -->      $(\"#modell\").val(\"\");<!-- [et_pb_line_break_holder] -->    } else { \/\/ time<!-- [et_pb_line_break_holder] -->      $(\"#modell, #datum\").val(\"\");<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Und abschlie\u00dfend noch mal ausgrauen:<!-- [et_pb_line_break_holder] -->    updateTimes();<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ 7) Werte cachen beim Submit<!-- [et_pb_line_break_holder] -->  $(document).on(\"submit\", \"#booking-form\", function(){<!-- [et_pb_line_break_holder] -->    const fn = $(\"#vorname\").val().trim() || \"\";<!-- [et_pb_line_break_holder] -->    const ln = $(\"#nachname\").val().trim() || \"\";<!-- [et_pb_line_break_holder] -->    lastSubmission = {<!-- [et_pb_line_break_holder] -->      name:    (fn + \" \" + ln).trim(),<!-- [et_pb_line_break_holder] -->      email:   $(\"#email\").val().trim()   || \"\",<!-- [et_pb_line_break_holder] -->      modell:  $(\"#modell\").val()         || \"\",<!-- [et_pb_line_break_holder] -->      datum:   $(\"#datum\").val()         || \"\",<!-- [et_pb_line_break_holder] -->      uhrzeit: $(\"#uhrzeit\").val()         || \"\"<!-- [et_pb_line_break_holder] -->    };<!-- [et_pb_line_break_holder] -->    console.log(\"???? Submission gecached:\", lastSubmission);<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ 8) Beim Rendern (initial & nach AJAX) neu laden + ausgrauen<!-- [et_pb_line_break_holder] -->  $(document).on(\"gform_post_render\", function(e, formId){<!-- [et_pb_line_break_holder] -->    if (formId==1){<!-- [et_pb_line_break_holder] -->      console.log(\"???? gform_post_render f\u00fcr Form\", formId);<!-- [et_pb_line_break_holder] -->      fetchBooked().then(updateTimes);<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ 9) Nach Best\u00e4tigung speichern & neu laden<!-- [et_pb_line_break_holder] -->  $(document).on(\"gform_confirmation_loaded\", function(e, formId){<!-- [et_pb_line_break_holder] -->    if (formId!==1) return;<!-- [et_pb_line_break_holder] -->    console.log(\"\u2705 gform_confirmation_loaded f\u00fcr Form\", formId);<!-- [et_pb_line_break_holder] -->    const d = lastSubmission || {};<!-- [et_pb_line_break_holder] -->    console.log(\"???? Verwende gecachelte Daten:\", d);<!-- [et_pb_line_break_holder] -->    if (!d.name||!d.email||!d.modell||!d.datum||!d.uhrzeit){<!-- [et_pb_line_break_holder] -->      console.warn(\"\u26a0\ufe0f Unvollst\u00e4ndige Daten \u2013 nicht gespeichert\");<!-- [et_pb_line_break_holder] -->      return;<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    db.collection(\"buchungen\").add({<!-- [et_pb_line_break_holder] -->      name:      d.name,<!-- [et_pb_line_break_holder] -->      email:     d.email,<!-- [et_pb_line_break_holder] -->      modell:    d.modell,<!-- [et_pb_line_break_holder] -->      datum:     d.datum,<!-- [et_pb_line_break_holder] -->      uhrzeit:   d.uhrzeit,<!-- [et_pb_line_break_holder] -->      timestamp: firebase.firestore.FieldValue.serverTimestamp()<!-- [et_pb_line_break_holder] -->    })<!-- [et_pb_line_break_holder] -->    .then(ref=>{<!-- [et_pb_line_break_holder] -->      console.log(\"\u2705 Gespeichert, ID:\", ref.id);<!-- [et_pb_line_break_holder] -->      return fetchBooked();<!-- [et_pb_line_break_holder] -->    })<!-- [et_pb_line_break_holder] -->    .then(updateTimes)<!-- [et_pb_line_break_holder] -->    .catch(err=> console.error(\"\u274c Firestore-Error:\", err));<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Listener f\u00fcr Modell & Datum<!-- [et_pb_line_break_holder] -->$(\"#modell, #datum\").off(\"change\").on(\"change\", function(){<!-- [et_pb_line_break_holder] -->  const field  = this.id === \"modell\" ? \"Modell\" : \"Datum\";<!-- [et_pb_line_break_holder] -->  const $time  = $(\"#uhrzeit\");<!-- [et_pb_line_break_holder] -->  const prev   = $time.val();    \/\/ \u2460 vor dem Ausgrauen merken<!-- [et_pb_line_break_holder] -->  updateTimes();                 \/\/ \u2461 ausgrauen<!-- [et_pb_line_break_holder] -->  const disabled = $time<!-- [et_pb_line_break_holder] -->    .find(`option[value=\"${prev}\"]`)<!-- [et_pb_line_break_holder] -->    .prop(\"disabled\");<!-- [et_pb_line_break_holder] -->  console.log(\"\u23f1\ufe0f prevTime:\", prev, \"disabled:\", disabled);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  if (prev && disabled) {<!-- [et_pb_line_break_holder] -->  showCustomModal(\"Dieser Termin ist leider bereits belegt.\\nBitte w\u00e4hle einen anderen Termin.\");<!-- [et_pb_line_break_holder] -->  $time.val(\"\");<!-- [et_pb_line_break_holder] -->  updateTimes();<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Listener f\u00fcr Uhrzeit-Feld \u00f6ffnen\/\u00e4ndern<!-- [et_pb_line_break_holder] -->$(\"#uhrzeit\").off(\"focus change\").on(\"focus change\", function(){<!-- [et_pb_line_break_holder] -->  const $time  = $(this);<!-- [et_pb_line_break_holder] -->  const prev   = $time.val();<!-- [et_pb_line_break_holder] -->  updateTimes();<!-- [et_pb_line_break_holder] -->  const disabled = $time.find(`option[value=\"${prev}\"]`).prop(\"disabled\");<!-- [et_pb_line_break_holder] -->  console.log(\"\u23f1\ufe0f [time] prevTime:\", prev, \"disabled:\", disabled);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  if (prev && disabled) {<!-- [et_pb_line_break_holder] -->  showCustomModal(\"Dieser Termin ist leider bereits belegt.\\nBitte w\u00e4hle einen anderen Termin.\");<!-- [et_pb_line_break_holder] -->  $time.val(\"\");<!-- [et_pb_line_break_holder] -->  updateTimes();<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function showError(message){<!-- [et_pb_line_break_holder] -->  console.log(\"???? showError minimal aufgerufen:\", message);<!-- [et_pb_line_break_holder] -->  \/\/ Existierendes simple Banner entfernen<!-- [et_pb_line_break_holder] -->  let existing = document.getElementById(\"booking-error-fixed\");<!-- [et_pb_line_break_holder] -->  if (existing) existing.remove();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Neues Banner erzeugen<!-- [et_pb_line_break_holder] -->  let b = document.createElement(\"div\");<!-- [et_pb_line_break_holder] -->  b.id = \"booking-error-fixed\";<!-- [et_pb_line_break_holder] -->  b.textContent = message;<!-- [et_pb_line_break_holder] -->  Object.assign(b.style, {<!-- [et_pb_line_break_holder] -->    position:   \"fixed\",<!-- [et_pb_line_break_holder] -->    top:        \"20vh\",<!-- [et_pb_line_break_holder] -->    left:       \"0\",<!-- [et_pb_line_break_holder] -->    background: \"#f8d7da\",<!-- [et_pb_line_break_holder] -->    color:      \"#842029\",<!-- [et_pb_line_break_holder] -->    padding:    \"1em\",<!-- [et_pb_line_break_holder] -->    textAlign:  \"center\",<!-- [et_pb_line_break_holder] -->    fontWeight: \"600\",<!-- [et_pb_line_break_holder] -->    zIndex:     99999,<!-- [et_pb_line_break_holder] -->    display:    \"block\"<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] -->  document.body.appendChild(b);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Nach 3 Sekunden wieder weg<!-- [et_pb_line_break_holder] -->  setTimeout(() => {<!-- [et_pb_line_break_holder] -->    b.style.display = \"none\";<!-- [et_pb_line_break_holder] -->  }, 3000);<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function showCustomModal(message) {<!-- [et_pb_line_break_holder] -->  \/\/ Overlay erstellen<!-- [et_pb_line_break_holder] -->  const overlay = document.createElement('div');<!-- [et_pb_line_break_holder] -->  overlay.className = 'custom-modal-overlay';<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Modal-Box<!-- [et_pb_line_break_holder] -->  const modal = document.createElement('div');<!-- [et_pb_line_break_holder] -->  modal.className = 'custom-modal';<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Message<!-- [et_pb_line_break_holder] -->  const msg = document.createElement('div');<!-- [et_pb_line_break_holder] -->  msg.className = 'custom-modal-message';<!-- [et_pb_line_break_holder] -->  msg.textContent = message;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ OK-Button<!-- [et_pb_line_break_holder] -->  const btn = document.createElement('button');<!-- [et_pb_line_break_holder] -->  btn.className = 'custom-modal-button';<!-- [et_pb_line_break_holder] -->  btn.textContent = 'OK';<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Klick auf OK: Modal entfernen<!-- [et_pb_line_break_holder] -->  btn.addEventListener('click', () => {<!-- [et_pb_line_break_holder] -->    document.body.removeChild(overlay);<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ zusammensetzen<!-- [et_pb_line_break_holder] -->  modal.appendChild(msg);<!-- [et_pb_line_break_holder] -->  modal.appendChild(btn);<!-- [et_pb_line_break_holder] -->  overlay.appendChild(modal);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ ins DOM<!-- [et_pb_line_break_holder] -->  document.body.appendChild(overlay);<!-- [et_pb_line_break_holder] -->}  <!-- [et_pb_line_break_holder] -->var $dropdown = $(\"#datum\");<!-- [et_pb_line_break_holder] -->  if ($dropdown.length && !$dropdown.data('flatpickrified')) { \/\/ doppelt verhindern!<!-- [et_pb_line_break_holder] -->    $dropdown.data('flatpickrified', true);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Alle Werte (Optionen) auslesen, au\u00dfer Placeholder<!-- [et_pb_line_break_holder] -->    var options = $dropdown.find(\"option\").map(function(){<!-- [et_pb_line_break_holder] -->      var val = $(this).val();<!-- [et_pb_line_break_holder] -->      if (\/^\\d{4}-\\d{2}-\\d{2}$\/.test(val)) return val;<!-- [et_pb_line_break_holder] -->    }).get();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Neues Input-Feld erzeugen (Datepicker)<!-- [et_pb_line_break_holder] -->    var $dateInput = $('<input type=\"text\" id=\"date-picker-override\" placeholder=\"Datum w\u00e4hlen\" autocomplete=\"off\" style=\"width:100%;margin-bottom:5px;\">');<!-- [et_pb_line_break_holder] -->    $dropdown.after($dateInput).hide();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Flatpickr initialisieren, nur mit erlaubten Tagen<!-- [et_pb_line_break_holder] -->    flatpickr(\"#date-picker-override\", {<!-- [et_pb_line_break_holder] -->      dateFormat: \"Y-m-d\",<!-- [et_pb_line_break_holder] -->      enable: options,<!-- [et_pb_line_break_holder] -->      onChange: function(selectedDates, dateStr, instance){<!-- [et_pb_line_break_holder] -->        $dropdown.val(dateStr).trigger(\"change\");<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Optional: Vorbelegung, falls im Dropdown schon Wert war<!-- [et_pb_line_break_holder] -->    if($dropdown.val()) {<!-- [et_pb_line_break_holder] -->      $dateInput.val($dropdown.val());<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Synchronisation, falls User \u00fcber Dropdown (z.B. zur\u00fcck) was ausw\u00e4hlt<!-- [et_pb_line_break_holder] -->    $dropdown.on(\"change\", function(){<!-- [et_pb_line_break_holder] -->      $dateInput.val($(this).val());<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><\/script><!-- [et_pb_line_break_holder] -->[\/et_pb_code][et_pb_code _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; hover_enabled=&#8220;0&#8243; global_colors_info=&#8220;{}&#8220; sticky_enabled=&#8220;0&#8243;]<!-- Firebase, jQuery, Flatpickr einbinden (wie gehabt) --><!-- [et_pb_line_break_holder] --><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.6.11\/firebase-app-compat.js\"><\/script><!-- [et_pb_line_break_holder] --><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.6.11\/firebase-firestore-compat.js\"><\/script><!-- [et_pb_line_break_holder] --><script src=\"https:\/\/code.jquery.com\/jquery-3.6.0.min.js\"><\/script><!-- [et_pb_line_break_holder] --><link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr\/dist\/flatpickr.min.css\"><!-- [et_pb_line_break_holder] --><script src=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr\"><\/script><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><script><!-- [et_pb_line_break_holder] -->jQuery(async function($){<!-- [et_pb_line_break_holder] -->  \/\/ --- Firebase Initialisierung ---<!-- [et_pb_line_break_holder] -->  const firebaseConfig = {<!-- [et_pb_line_break_holder] -->    apiKey:    \"AIzaSyDWadIJyfEEcXxn-Sjp7GWSoYnLYgkud44\",<!-- [et_pb_line_break_holder] -->    authDomain:\"e-moto-db.firebaseapp.com\",<!-- [et_pb_line_break_holder] -->    projectId: \"e-moto-db\"<!-- [et_pb_line_break_holder] -->  };<!-- [et_pb_line_break_holder] -->  if (!firebase.apps.length) firebase.initializeApp(firebaseConfig);<!-- [et_pb_line_break_holder] -->  const db = firebase.firestore();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ --- 1. Modell (immer nur dieses anzeigen, vorselektiert) ---<!-- [et_pb_line_break_holder] -->const FIXED_MODEL = \"NAXEON | I AM Pro\";<!-- [et_pb_line_break_holder] -->const $modell = $(\"#modell\").empty();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->$modell.append(`<option value=\"${FIXED_MODEL}\" selected>${FIXED_MODEL}<\/option>`);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ --- 2. Datum: Nur ausw\u00e4hlbar, was in Firestore\/daten liegt ---<!-- [et_pb_line_break_holder] -->  let allowedDates = [];<!-- [et_pb_line_break_holder] -->  await db.collection(\"daten\").get().then(snap => {<!-- [et_pb_line_break_holder] -->    allowedDates = snap.docs.map(d => d.data().datum);<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ --- 3. Zeitfenster mit Wochentag laden & pro Datum filtern ---<!-- [et_pb_line_break_holder] -->let zeitfenster = [];<!-- [et_pb_line_break_holder] -->await db.collection(\"zeitfenster\").get().then(snap => {<!-- [et_pb_line_break_holder] -->  \/\/ erwartet Docs wie { dow: 3..6, zeit: \"11.00 - 13.00\" }<!-- [et_pb_line_break_holder] -->  zeitfenster = snap.docs.map(d => d.data());<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->const $uhrzeit = $(\"#uhrzeit\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function buildTimesForDate(dateStr){<!-- [et_pb_line_break_holder] -->  const prev = $uhrzeit.val();<!-- [et_pb_line_break_holder] -->  const dow  = new Date(dateStr + \"T00:00:00\").getDay(); \/\/ 0=So..6=Sa<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  const slots = [...new Set(zeitfenster<!-- [et_pb_line_break_holder] -->    .filter(z => z.dow === dow)              \/\/ nur passende Slots des Tages<!-- [et_pb_line_break_holder] -->    .map(z => z.zeit))]<!-- [et_pb_line_break_holder] -->    .sort((a,b)=> a.localeCompare(b,'de',{numeric:true}));<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  $uhrzeit.empty().append('<option value=\"\" disabled selected>Uhrzeit w\u00e4hlen<\/option>');<!-- [et_pb_line_break_holder] -->  slots.forEach(zeit => $uhrzeit.append(`<option value=\"${zeit}\">${zeit}<\/option>`));<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ vorige Auswahl beibehalten, wenn noch g\u00fcltig<!-- [et_pb_line_break_holder] -->  if (prev && slots.includes(prev)) {<!-- [et_pb_line_break_holder] -->    $uhrzeit.val(prev);<!-- [et_pb_line_break_holder] -->    \/\/ Pr\u00fcfe sofort ob die beibehaltene Zeit einen Konflikt hat<!-- [et_pb_line_break_holder] -->    setTimeout(() => checkAndAlert(), 10);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ gebuchte Slots ausgrauen<!-- [et_pb_line_break_holder] -->  updateTimes();<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ --- 4. Gebuchte Slots ausgrauen (und Konflikte checken) ---<!-- [et_pb_line_break_holder] -->let bookedList = [];<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Buchungen laden<!-- [et_pb_line_break_holder] -->async function fetchBooked() {<!-- [et_pb_line_break_holder] -->  await db.collection(\"buchungen\").get().then(snap => {<!-- [et_pb_line_break_holder] -->    bookedList = snap.docs.map(d => d.data());<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Helfer<!-- [et_pb_line_break_holder] -->function isComplete() {<!-- [et_pb_line_break_holder] -->  const model = $(\"#modell\").val();<!-- [et_pb_line_break_holder] -->  const date = $(\"#datum\").val();<!-- [et_pb_line_break_holder] -->  const time = $(\"#uhrzeit\").val();<!-- [et_pb_line_break_holder] -->  const complete = !!(model && date && time);<!-- [et_pb_line_break_holder] -->  console.log(\"\ud83d\udd0d isComplete check:\", { model, date, time, complete });<!-- [et_pb_line_break_holder] -->  return complete;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->function isConflict(model, date, time) {<!-- [et_pb_line_break_holder] -->  return bookedList.some(b => b.modell === model && b.datum === date && b.uhrzeit === time);<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Uhrzeiten f\u00fcr gew\u00e4hltes Datum\/Modell ausgrauen<!-- [et_pb_line_break_holder] -->function updateTimes() {<!-- [et_pb_line_break_holder] -->  const model = $(\"#modell\").val();<!-- [et_pb_line_break_holder] -->  const date  = $(\"#datum\").val();<!-- [et_pb_line_break_holder] -->  $(\"#uhrzeit option\").prop(\"disabled\", false).css(\"opacity\", 1);<!-- [et_pb_line_break_holder] -->  bookedList.forEach(b => {<!-- [et_pb_line_break_holder] -->    if (b.modell === model && b.datum === date) {<!-- [et_pb_line_break_holder] -->      $(\"#uhrzeit option\").filter((_, opt) => opt.value === b.uhrzeit)<!-- [et_pb_line_break_holder] -->        .prop(\"disabled\", true)<!-- [et_pb_line_break_holder] -->        .css(\"opacity\", 0.5);<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Removed complex updateSubmitState - button stays enabled<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Zentral: pr\u00fcfen + ggf. Alert + Reset + Button sperren (vereinfacht)<!-- [et_pb_line_break_holder] -->function checkAndAlert() {<!-- [et_pb_line_break_holder] -->  const model = $(\"#modell\").val();<!-- [et_pb_line_break_holder] -->  const date  = $(\"#datum\").val();<!-- [et_pb_line_break_holder] -->  const time  = $(\"#uhrzeit\").val();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Nur pr\u00fcfen wenn alle Felder ausgef\u00fcllt sind<!-- [et_pb_line_break_holder] -->  if (isComplete() && isConflict(model, date, time)) {<!-- [et_pb_line_break_holder] -->    showCustomModal(\"Dieser Termin ist bereits belegt. Bitte w\u00e4hle einen anderen Termin.\");<!-- [et_pb_line_break_holder] -->    $(\"#uhrzeit\").val(\"\");<!-- [et_pb_line_break_holder] -->    updateTimes();<!-- [et_pb_line_break_holder] -->    return true; \/\/ Konflikt gefunden<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  return false; \/\/ Kein Konflikt<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Listener f\u00fcr Modell (separate von Datum)<!-- [et_pb_line_break_holder] -->$(\"#modell\").off(\"change\").on(\"change\", function(){<!-- [et_pb_line_break_holder] -->  console.log(\"\ud83d\udd04 Modell changed:\", $(this).val());<!-- [et_pb_line_break_holder] -->  const $time = $(\"#uhrzeit\");<!-- [et_pb_line_break_holder] -->  const prev = $time.val(); \/\/ \u2460 vor dem Ausgrauen merken<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  updateTimes();<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/\/ \u2461 Nach dem Ausgrauen pr\u00fcfen ob vorherige Zeit jetzt disabled ist<!-- [et_pb_line_break_holder] -->  if (prev) {<!-- [et_pb_line_break_holder] -->    const disabled = $time.find(`option[value=\"${prev}\"]`).prop(\"disabled\");<!-- [et_pb_line_break_holder] -->    console.log(\"\u23f1\ufe0f [modell] prevTime:\", prev, \"disabled:\", disabled);<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    if (disabled) {<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Dieser Termin ist leider bereits belegt.\\nBitte w\u00e4hle einen anderen Termin.\");<!-- [et_pb_line_break_holder] -->      $time.val(\"\");<!-- [et_pb_line_break_holder] -->      updateTimes();<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Separate Funktion f\u00fcr Datum-\u00c4nderung<!-- [et_pb_line_break_holder] -->function handleDateChange(dateStr) {<!-- [et_pb_line_break_holder] -->  console.log(\"\ud83d\udcc5 Date changed:\", dateStr);<!-- [et_pb_line_break_holder] -->  const $time = $(\"#uhrzeit\");<!-- [et_pb_line_break_holder] -->  const prev = $time.val(); \/\/ \u2460 vor dem Ausgrauen merken<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  if (dateStr) {<!-- [et_pb_line_break_holder] -->    buildTimesForDate(dateStr);<!-- [et_pb_line_break_holder] -->  } else {<!-- [et_pb_line_break_holder] -->    updateTimes();<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/\/ \u2461 Nach dem Ausgrauen pr\u00fcfen ob vorherige Zeit jetzt disabled ist<!-- [et_pb_line_break_holder] -->  if (prev) {<!-- [et_pb_line_break_holder] -->    const disabled = $time.find(`option[value=\"${prev}\"]`).prop(\"disabled\");<!-- [et_pb_line_break_holder] -->    console.log(\"\u23f1\ufe0f [date] prevTime:\", prev, \"disabled:\", disabled);<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    if (disabled) {<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Dieser Termin ist leider bereits belegt.\\nBitte w\u00e4hle einen anderen Termin.\");<!-- [et_pb_line_break_holder] -->      $time.val(\"\");<!-- [et_pb_line_break_holder] -->      updateTimes();<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Listener f\u00fcr Uhrzeit (wie Gravity Forms)<!-- [et_pb_line_break_holder] -->$(\"#uhrzeit\").off(\"focus change\").on(\"focus change\", function(){<!-- [et_pb_line_break_holder] -->  const $time = $(this);<!-- [et_pb_line_break_holder] -->  const prev = $time.val();<!-- [et_pb_line_break_holder] -->  updateTimes();<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  if (prev) {<!-- [et_pb_line_break_holder] -->    const disabled = $time.find(`option[value=\"${prev}\"]`).prop(\"disabled\");<!-- [et_pb_line_break_holder] -->    console.log(\"\u23f1\ufe0f [time] prevTime:\", prev, \"disabled:\", disabled);<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    if (disabled) {<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Dieser Termin ist leider bereits belegt.\\nBitte w\u00e4hle einen anderen Termin.\");<!-- [et_pb_line_break_holder] -->      $time.val(\"\");<!-- [et_pb_line_break_holder] -->      updateTimes();<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Listener f\u00fcr normale Datum-\u00c4nderung (falls kein Flatpickr)<!-- [et_pb_line_break_holder] -->$(\"#datum\").on(\"change\", function() {<!-- [et_pb_line_break_holder] -->  handleDateChange($(this).val());<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Flatpickr initialisieren mit Konflikt-Erkennung<!-- [et_pb_line_break_holder] -->flatpickr(\"#datum\", {<!-- [et_pb_line_break_holder] -->  dateFormat: \"Y-m-d\",<!-- [et_pb_line_break_holder] -->  enable: allowedDates,<!-- [et_pb_line_break_holder] -->  onChange: function(selectedDates, dateStr) {<!-- [et_pb_line_break_holder] -->    handleDateChange(dateStr);<!-- [et_pb_line_break_holder] -->  },<!-- [et_pb_line_break_holder] -->  onClose: function(selectedDates, dateStr) {<!-- [et_pb_line_break_holder] -->    handleDateChange(dateStr);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Initial laden<!-- [et_pb_line_break_holder] -->await fetchBooked();<!-- [et_pb_line_break_holder] -->updateTimes();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/\/ --- 5. Formular absenden (inkl. Mail per Formspree o.\u00e4.) ---<!-- [et_pb_line_break_holder] -->  $(\"#booking-form\").on(\"submit\", async function(e){<!-- [et_pb_line_break_holder] -->    console.log(\"\ud83d\udce8 FORM SUBMIT TRIGGERED\");<!-- [et_pb_line_break_holder] -->    e.preventDefault();<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    \/\/ Werte holen<!-- [et_pb_line_break_holder] -->    const vorname = $(\"#vorname\").val().trim();<!-- [et_pb_line_break_holder] -->    const nachname = $(\"#nachname\").val().trim();<!-- [et_pb_line_break_holder] -->    const email = $(\"#email\").val().trim();<!-- [et_pb_line_break_holder] -->    const modell = $(\"#modell\").val(); \/\/ Fixed: use $(\"#modell\") instead of $modell<!-- [et_pb_line_break_holder] -->    const datum = $(\"#datum\").val();<!-- [et_pb_line_break_holder] -->    const uhrzeit = $(\"#uhrzeit\").val();<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    console.log(\"\ud83d\udccb Form values:\", { vorname, nachname, email, modell, datum, uhrzeit });<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    \/\/ Einfache Validierung nur f\u00fcr Datum und Uhrzeit (HTML validiert bereits Name\/Email)<!-- [et_pb_line_break_holder] -->    if (!datum) {<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Bitte w\u00e4hlen Sie ein Datum aus.\");<!-- [et_pb_line_break_holder] -->      return;<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    if (!uhrzeit) {<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Bitte w\u00e4hlen Sie eine Uhrzeit aus.\");<!-- [et_pb_line_break_holder] -->      return;<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    console.log(\"\u2705 Datum and Uhrzeit selected\");<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    \/\/ E-Mail Format validieren<!-- [et_pb_line_break_holder] -->    const emailRegex = \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/;<!-- [et_pb_line_break_holder] -->    if (!emailRegex.test(email)) {<!-- [et_pb_line_break_holder] -->      console.log(\"\u26a0\ufe0f Invalid email format:\", email);<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Bitte geben Sie eine g\u00fcltige E-Mail-Adresse ein.\");<!-- [et_pb_line_break_holder] -->      return;<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    console.log(\"\u2705 Email format valid\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Konflikt-Pr\u00fcfung vor Submit<!-- [et_pb_line_break_holder] -->    const conflict = bookedList.some(b =><!-- [et_pb_line_break_holder] -->      b.modell === modell &&<!-- [et_pb_line_break_holder] -->      b.datum === datum &&<!-- [et_pb_line_break_holder] -->      b.uhrzeit === uhrzeit<!-- [et_pb_line_break_holder] -->    );<!-- [et_pb_line_break_holder] -->    if (conflict) {<!-- [et_pb_line_break_holder] -->      console.log(\"\u26a0\ufe0f Booking conflict detected\");<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Dieses Fahrzeug ist zum Wunschtermin leider nicht verf\u00fcgbar. Bitte w\u00e4hlen Sie einen anderen Termin.\");<!-- [et_pb_line_break_holder] -->      updateTimes();<!-- [et_pb_line_break_holder] -->      return;<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    console.log(\"\u2705 No booking conflicts\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Buchung speichern<!-- [et_pb_line_break_holder] -->    console.log(\"\ud83d\udcbe Saving booking to Firestore...\");<!-- [et_pb_line_break_holder] -->    try {<!-- [et_pb_line_break_holder] -->      const docRef = await db.collection(\"buchungen\").add({<!-- [et_pb_line_break_holder] -->        name:      vorname + \" \" + nachname,<!-- [et_pb_line_break_holder] -->        email:     email,<!-- [et_pb_line_break_holder] -->        modell:    modell,<!-- [et_pb_line_break_holder] -->        datum:     datum,<!-- [et_pb_line_break_holder] -->        uhrzeit:   uhrzeit,<!-- [et_pb_line_break_holder] -->        timestamp: firebase.firestore.FieldValue.serverTimestamp()<!-- [et_pb_line_break_holder] -->      });<!-- [et_pb_line_break_holder] -->      console.log(\"\u2705 Booking saved with ID:\", docRef.id);<!-- [et_pb_line_break_holder] -->    } catch (error) {<!-- [et_pb_line_break_holder] -->      console.error(\"\u274c Firestore save error:\", error);<!-- [et_pb_line_break_holder] -->      showCustomModal(\"Fehler beim Speichern der Buchung. Bitte versuchen Sie es erneut.\");<!-- [et_pb_line_break_holder] -->      return;<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ --- E-Mail Versand via Formspree ---<!-- [et_pb_line_break_holder] -->console.log(\"\ud83d\udce7 Sending email via Formspree...\");<!-- [et_pb_line_break_holder] -->try {<!-- [et_pb_line_break_holder] -->  \/\/ Formspree-Endpoint: in deinem Dashboard kopieren (Format: https:\/\/formspree.io\/f\/XXXXYYYY)<!-- [et_pb_line_break_holder] -->  const FORMSPREE_ENDPOINT = \"https:\/\/formspree.io\/f\/mjvdpgpy\";<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Inhalt f\u00fcr die E-Mail (geht an die in Formspree konfigurierte Empf\u00e4ngeradresse)<!-- [et_pb_line_break_holder] -->  const fd = new FormData();<!-- [et_pb_line_break_holder] -->  fd.append(\"name\", `${vorname} ${nachname}`);<!-- [et_pb_line_break_holder] -->  fd.append(\"email\", email);                 \/\/ vom Nutzer eingegebene E-Mail<!-- [et_pb_line_break_holder] -->  fd.append(\"modell\", modell);<!-- [et_pb_line_break_holder] -->  fd.append(\"datum\", datum);<!-- [et_pb_line_break_holder] -->  fd.append(\"uhrzeit\", uhrzeit);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Betreff gem\u00e4\u00df deiner Vorgabe:<!-- [et_pb_line_break_holder] -->  \/\/ https:\/\/help.formspree.io\/hc\/en-us\/articles\/360013579753-Email-subject-line<!-- [et_pb_line_break_holder] -->  fd.append(\"_subject\", \"Best\u00e4tigung Buchung Probefahrt\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Optional, damit Antworten an den Nutzer gehen:<!-- [et_pb_line_break_holder] -->  \/\/ (Formspree akzeptiert sowohl \"email\" als Feld als auch \"_replyto\" als Fallback)<!-- [et_pb_line_break_holder] -->  fd.append(\"_replyto\", email);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Optional: kompakter Nachrichtentext f\u00fcr die Mail<!-- [et_pb_line_break_holder] -->  fd.append(\"message\",<!-- [et_pb_line_break_holder] -->    `Neue Probefahrt-Buchung<!-- [et_pb_line_break_holder] -->Name: ${vorname} ${nachname}<!-- [et_pb_line_break_holder] -->E-Mail: ${email}<!-- [et_pb_line_break_holder] -->Modell: ${modell}<!-- [et_pb_line_break_holder] -->Datum: ${datum}<!-- [et_pb_line_break_holder] -->Uhrzeit: ${uhrzeit}`<!-- [et_pb_line_break_holder] -->  );<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  const res = await fetch(FORMSPREE_ENDPOINT, {<!-- [et_pb_line_break_holder] -->    method: \"POST\",<!-- [et_pb_line_break_holder] -->    headers: { \"Accept\": \"application\/json\" },<!-- [et_pb_line_break_holder] -->    body: fd<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  if (!res.ok) {<!-- [et_pb_line_break_holder] -->    const err = await res.json().catch(() => ({}));<!-- [et_pb_line_break_holder] -->    console.error(\"\u274c Formspree error:\", err);<!-- [et_pb_line_break_holder] -->    alert(\"Die Buchung wurde gespeichert, aber der Mailversand ist fehlgeschlagen. Bitte versuche es sp\u00e4ter erneut.\");<!-- [et_pb_line_break_holder] -->  } else {<!-- [et_pb_line_break_holder] -->    console.log(\"\u2705 Email sent successfully\");<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->} catch (e) {<!-- [et_pb_line_break_holder] -->  console.error(\"\u274c Email send error:\", e);<!-- [et_pb_line_break_holder] -->  alert(\"Die Buchung wurde gespeichert, aber der Mailversand ist fehlgeschlagen. Bitte versuche es sp\u00e4ter erneut.\");<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ --- Feedback ---<!-- [et_pb_line_break_holder] -->    console.log(\"\u2705 Booking process completed successfully\");<!-- [et_pb_line_break_holder] -->    showCustomModal(\"Vielen Dank! Ihre Buchung wurde erfolgreich gespeichert.\", {<!-- [et_pb_line_break_holder] -->      title: \"Buchung erfolgreich\",<!-- [et_pb_line_break_holder] -->      primaryText: \"OK\",<!-- [et_pb_line_break_holder] -->      onPrimary: () => {<!-- [et_pb_line_break_holder] -->        console.log(\"\ud83d\udd04 Resetting form and reloading data...\");<!-- [et_pb_line_break_holder] -->        \/\/ Form zur\u00fccksetzen nach erfolgreichem Submit - robustere Methode<!-- [et_pb_line_break_holder] -->        try {<!-- [et_pb_line_break_holder] -->          const form = document.getElementById(\"booking-form\");<!-- [et_pb_line_break_holder] -->          if (form && typeof form.reset === 'function') {<!-- [et_pb_line_break_holder] -->            form.reset();<!-- [et_pb_line_break_holder] -->          } else {<!-- [et_pb_line_break_holder] -->            \/\/ Fallback: Felder einzeln zur\u00fccksetzen<!-- [et_pb_line_break_holder] -->            $(\"#vorname, #nachname, #email, #telefon\").val(\"\");<!-- [et_pb_line_break_holder] -->            $(\"#modell\").prop(\"selectedIndex\", 0);<!-- [et_pb_line_break_holder] -->            $(\"#datum\").val(\"\");<!-- [et_pb_line_break_holder] -->          }<!-- [et_pb_line_break_holder] -->        } catch (error) {<!-- [et_pb_line_break_holder] -->          console.error(\"Form reset error:\", error);<!-- [et_pb_line_break_holder] -->          \/\/ Fallback: Felder einzeln zur\u00fccksetzen<!-- [et_pb_line_break_holder] -->          $(\"#vorname, #nachname, #email, #telefon\").val(\"\");<!-- [et_pb_line_break_holder] -->          $(\"#modell\").prop(\"selectedIndex\", 0);<!-- [et_pb_line_break_holder] -->          $(\"#datum\").val(\"\");<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->        $(\"#uhrzeit\").empty().append('<option value=\"\" disabled selected>Uhrzeit w\u00e4hlen<\/option>');<!-- [et_pb_line_break_holder] -->        fetchBooked().then(() => updateTimes());<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/\/ Debug: Check if form handler is attached<!-- [et_pb_line_break_holder] -->  console.log(\"\ud83d\udd17 Form submit handler attached to:\", $(\"#booking-form\").length, \"element(s)\");<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/\/ Removed disabled prop debugging<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/\/ Debug: Add click listener to submit button<!-- [et_pb_line_break_holder] -->  $(\".booking-submit\").on(\"click\", function(e) {<!-- [et_pb_line_break_holder] -->    console.log(\"\ud83d\uddb1\ufe0f Submit button clicked!\");<!-- [et_pb_line_break_holder] -->    console.log(\"Button disabled?\", $(this).prop(\"disabled\"));<!-- [et_pb_line_break_holder] -->    console.log(\"Button type:\", $(this).attr(\"type\"));<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/\/ Debug: Check submit button state<!-- [et_pb_line_break_holder] -->  console.log(\"\ud83d\udd18 Submit button found:\", $(\".booking-submit\").length, \"element(s)\");<!-- [et_pb_line_break_holder] -->  console.log(\"\ud83d\udd18 Submit button disabled:\", $(\".booking-submit\").prop(\"disabled\"));<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Initiales Ausgrauen nach Wahl<!-- [et_pb_line_break_holder] -->  $(\"#modell, #datum\").trigger(\"change\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->function showCustomModal(message, {title=\"Termin nicht verf\u00fcgbar\", primaryText=\"OK\", onPrimary=null, secondaryText=null, onSecondary=null} = {}) {<!-- [et_pb_line_break_holder] -->  \/\/ Falls schon offen \u2192 entfernen<!-- [et_pb_line_break_holder] -->  const existing = document.getElementById(\"custom-modal-overlay\");<!-- [et_pb_line_break_holder] -->  if (existing) existing.remove();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Overlay<!-- [et_pb_line_break_holder] -->  const overlay = document.createElement(\"div\");<!-- [et_pb_line_break_holder] -->  overlay.className = \"custom-modal-overlay\";<!-- [et_pb_line_break_holder] -->  overlay.id = \"custom-modal-overlay\";<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Modal<!-- [et_pb_line_break_holder] -->  const modal = document.createElement(\"div\");<!-- [et_pb_line_break_holder] -->  modal.className = \"custom-modal\";<!-- [et_pb_line_break_holder] -->  modal.setAttribute(\"role\", \"dialog\");<!-- [et_pb_line_break_holder] -->  modal.setAttribute(\"aria-modal\", \"true\");<!-- [et_pb_line_break_holder] -->  modal.setAttribute(\"aria-labelledby\", \"custom-modal-title\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Inhalt<!-- [et_pb_line_break_holder] -->  const h3 = document.createElement(\"h3\");<!-- [et_pb_line_break_holder] -->  h3.id = \"custom-modal-title\";<!-- [et_pb_line_break_holder] -->  h3.textContent = title;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  const p = document.createElement(\"p\");<!-- [et_pb_line_break_holder] -->  p.textContent = message;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Buttons<!-- [et_pb_line_break_holder] -->  const row = document.createElement(\"div\");<!-- [et_pb_line_break_holder] -->  row.className = \"btn-row\";<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  if (secondaryText) {<!-- [et_pb_line_break_holder] -->    const sec = document.createElement(\"button\");<!-- [et_pb_line_break_holder] -->    sec.className = \"btn-secondary\";<!-- [et_pb_line_break_holder] -->    sec.textContent = secondaryText;<!-- [et_pb_line_break_holder] -->    sec.addEventListener(\"click\", () => {<!-- [et_pb_line_break_holder] -->      overlay.remove();<!-- [et_pb_line_break_holder] -->      if (typeof onSecondary === \"function\") onSecondary();<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->    row.appendChild(sec);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  const pri = document.createElement(\"button\");<!-- [et_pb_line_break_holder] -->  pri.className = \"btn-primary\";<!-- [et_pb_line_break_holder] -->  pri.textContent = primaryText;<!-- [et_pb_line_break_holder] -->  pri.addEventListener(\"click\", () => {<!-- [et_pb_line_break_holder] -->    overlay.remove();<!-- [et_pb_line_break_holder] -->    if (typeof onPrimary === \"function\") onPrimary();<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ ESC schlie\u00dft<!-- [et_pb_line_break_holder] -->  const onKey = (e) => {<!-- [et_pb_line_break_holder] -->    if (e.key === \"Escape\") {<!-- [et_pb_line_break_holder] -->      overlay.remove();<!-- [et_pb_line_break_holder] -->      document.removeEventListener(\"keydown\", onKey);<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->  };<!-- [et_pb_line_break_holder] -->  document.addEventListener(\"keydown\", onKey);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  row.appendChild(pri);<!-- [et_pb_line_break_holder] -->  modal.append(h3, p, row);<!-- [et_pb_line_break_holder] -->  overlay.appendChild(modal);<!-- [et_pb_line_break_holder] -->  document.body.appendChild(overlay);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Fokus auf Primary<!-- [et_pb_line_break_holder] -->  setTimeout(() => pri.focus(), 0);<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><\/script><!-- [et_pb_line_break_holder] -->[\/et_pb_code][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8220;1_2,1_2&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; width=&#8220;52%&#8220; width_tablet=&#8220;100%&#8220; width_phone=&#8220;100%&#8220; width_last_edited=&#8220;on|phone&#8220; custom_margin=&#8220;0px||||false|false&#8220; custom_padding=&#8220;0px||||false|false&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_column type=&#8220;1_2&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][et_pb_text _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; text_font_size=&#8220;1.2rem&#8220; text_line_height=&#8220;1em&#8220; header_line_height=&#8220;1.3em&#8220; width_tablet=&#8220;92%&#8220; width_phone=&#8220;92%&#8220; width_last_edited=&#8220;on|tablet&#8220; custom_margin=&#8220;|auto||auto|false|false&#8220; custom_padding_tablet=&#8220;&#8220; custom_padding_phone=&#8220;&#8220; custom_padding_last_edited=&#8220;on|tablet&#8220; global_colors_info=&#8220;{}&#8220;]<\/p>\n<h2>UNSER STORE<\/h2>\n<p>&nbsp;<\/p>\n<p>Metrope Shop<\/p>\n<p>Heiligenst\u00e4dter Stra\u00dfe 82\/19\/R01<\/p>\n<p>1190 Wien<\/p>\n<p>Tel: +43\u202f(0) 660 3146198<\/p>\n<p><span>E-Mail: <span style=\"color: #00ccff;\"><a href=\"mailto:servus@niu-vienna.at\" style=\"color: #00ccff;\">servus@metrope.at<\/a><\/span><\/span><\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8220;1_2&#8243; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; global_colors_info=&#8220;{}&#8220;][dsm_embed_google_map address=&#8220;Heiligenst\u00e4dter Str. 82\/19\/R01, 1190 Wien&#8220; zoom=&#8220;15&#8243; disabled_on=&#8220;on|on|on&#8220; _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; disabled=&#8220;on&#8220; global_colors_info=&#8220;{}&#8220;][\/dsm_embed_google_map][et_pb_code _builder_version=&#8220;4.27.4&#8243; _module_preset=&#8220;default&#8220; text_orientation_tablet=&#8220;center&#8220; text_orientation_phone=&#8220;center&#8220; text_orientation_last_edited=&#8220;on|phone&#8220; global_colors_info=&#8220;{}&#8220;]<iframe src=\"https:\/\/www.google.com\/maps\/embed?pb=!1m18!1m12!1m3!1d5313.763432472173!2d16.3620718014671!3d48.24740436107098!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x476d063b9cb41fb1%3A0x42488dbb4958145e!2sMetrope%20Mobility%20GmbH!5e0!3m2!1sde!2sat!4v1753265265721!5m2!1sde!2sat\" width=\"600\" height=\"450\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\" referrerpolicy=\"no-referrer-when-downgrade\"><\/iframe>[\/et_pb_code][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Du kannst die Naxeon jetzt in unserem Store kennenlernen und Probe fahren.<div class=\"et_pb_module dsm_perspective_image dsm_perspective_image_0\">\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<div class=\"et_pb_module_inner\">\n\t\t\t\t\t<div class=\"dsm-perspective-image-wrapper et_always_center_on_mobile\">\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<span class=\"et_pb_image_wrap \"><img decoding=\"async\" src=\"https:\/\/metrope.at\/naxeon\/wp-content\/uploads\/2025\/08\/Naxeon-I-AM-detail-rueckseite.jpg\" alt=\"Naxeon I AM detail r\u00fcckseite\" title=\"Naxeon I AM detail r\u00fcckseite\" \/><\/span>\n\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>NAXEON I AM \u2013 Elektromobilit\u00e4t in ihrer sch\u00f6nsten Form NAXEON I AM ist mehr als nur ein E-Motorrad \u2013 es ist ein Statement f\u00fcr Design, Innovation und nachhaltige Mobilit\u00e4t. Jede [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-7","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/pages\/7","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/comments?post=7"}],"version-history":[{"count":139,"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/pages\/7\/revisions"}],"predecessor-version":[{"id":496,"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/pages\/7\/revisions\/496"}],"wp:attachment":[{"href":"https:\/\/metrope.at\/naxeon\/wp-json\/wp\/v2\/media?parent=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}