{"id":666,"date":"2025-05-13T12:17:15","date_gmt":"2025-05-13T17:17:15","guid":{"rendered":"https:\/\/simdigital.co\/?page_id=666"},"modified":"2025-09-09T20:59:05","modified_gmt":"2025-09-10T01:59:05","slug":"agendamiento","status":"publish","type":"page","link":"https:\/\/simdigital.co\/index.php\/agendamiento\/","title":{"rendered":"Agendamiento"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; specialty=&#8221;on&#8221; background_color_2=&#8221;#000000&#8243; padding_top_bottom_link_2=&#8221;false&#8221; padding_left_right_link_2=&#8221;false&#8221; admin_label=&#8221;Header&#8221; _builder_version=&#8221;4.0.8&#8243; background_image=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2021\/09\/agency-07.jpg&#8221; custom_padding=&#8221;8vw||21px||false|false&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.25&#8243; custom_padding=&#8221;|||&#8221; custom_padding__hover=&#8221;|||&#8221;][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; specialty_columns=&#8221;2&#8243; _builder_version=&#8221;3.25&#8243; custom_padding=&#8221;|||&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_row_inner _builder_version=&#8221;4.9.10&#8243; custom_padding=&#8221;6px|2.5vw|6px|2.5vw|true|true&#8221;][et_pb_column_inner saved_specialty_column_type=&#8221;1_2&#8243; _builder_version=&#8221;4.0.8&#8243;][et_pb_text _builder_version=&#8221;4.9.10&#8243; header_2_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_2_font_size=&#8221;12px&#8221; header_2_letter_spacing=&#8221;3px&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||10px||false|false&#8221;]<\/p>\n<h2><span style=\"color: #fc3f3f;\">\u2014<\/span> MARKETING DIGITAL CON RESULTADOS<\/h2>\n<p>[\/et_pb_text][et_pb_text _builder_version=&#8221;4.9.10&#8243; text_font_size=&#8221;12px&#8221; header_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_font_size=&#8221;71px&#8221; header_line_height=&#8221;1.1em&#8221; background_layout=&#8221;dark&#8221; header_font_size_tablet=&#8221;74px&#8221; header_font_size_phone=&#8221;44px&#8221; header_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<h1>\u00bfNecesitas m\u00e1s clientes potenciales?<\/h1>\n<p>[\/et_pb_text][et_pb_code _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_margin=&#8221;-34px|||||&#8221;]<\/p>\n<div id=\"vid_682f3f55584cb1cc9946c7e3\" style=\"position: relative; width: 100%; padding: 56.25% 0 0;\"> <img id=\"thumb_682f3f55584cb1cc9946c7e3\" src=\"https:\/\/images.converteai.net\/03094b1e-1c13-4104-91c2-2d32eed70a78\/players\/682f3f55584cb1cc9946c7e3\/thumbnail.jpg\" style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; display: block;\" alt=\"thumbnail\"> <\/p>\n<div id=\"backdrop_682f3f55584cb1cc9946c7e3\" style=\" -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); position: absolute; top: 0; height: 100%; width: 100%; \"><\/div>\n<\/p><\/div>\n<p> <script type=\"text\/javascript\" id=\"scr_682f3f55584cb1cc9946c7e3\"> var s=document.createElement(\"script\"); s.src=\"https:\/\/scripts.converteai.net\/03094b1e-1c13-4104-91c2-2d32eed70a78\/players\/682f3f55584cb1cc9946c7e3\/player.js\", s.async=!0,document.head.appendChild(s); <\/script>[\/et_pb_code][\/et_pb_column_inner][\/et_pb_row_inner][et_pb_row_inner _builder_version=&#8221;4.0.8&#8243; background_color=&#8221;#ffffff&#8221; custom_margin=&#8221;||||false|false&#8221; custom_padding=&#8221;12px|2.5vw|12px|2.5vw|true|true&#8221; border_color_all=&#8221;#000000&#8243; border_width_left=&#8221;2.5vw&#8221; box_shadow_style=&#8221;preset4&#8243; box_shadow_horizontal=&#8221;30vw&#8221; box_shadow_vertical=&#8221;32vw&#8221; box_shadow_spread=&#8221;27.5vw&#8221; box_shadow_color=&#8221;#ffc001&#8243;][et_pb_column_inner saved_specialty_column_type=&#8221;1_2&#8243; _builder_version=&#8221;4.0.8&#8243;][et_pb_text _builder_version=&#8221;4.9.10&#8243; text_font=&#8221;||||||||&#8221; text_text_color=&#8221;#676879&#8243; text_font_size=&#8221;18px&#8221; text_line_height=&#8221;1.5em&#8221; text_font_size_tablet=&#8221;15px&#8221; text_font_size_phone=&#8221;16px&#8221; text_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<p>Dise\u00f1amos estrategias digitales 360\u00b0 que transforman tu inversi\u00f3n publicitaria en clientes prospecto calificados y ventas reales para tu empresa<\/p>\n<p>[\/et_pb_text][et_pb_button button_url=&#8221;#contacto&#8221; button_text=&#8221;QUIERO MAS LEADS&#8221; button_alignment=&#8221;right&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_color=&#8221;#8300E9&#8243; box_shadow_style=&#8221;preset2&#8243; box_shadow_color=&#8221;#000000&#8243;][\/et_pb_button][\/et_pb_column_inner][\/et_pb_row_inner][\/et_pb_column][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_padding=&#8221;9px||4px|||&#8221;][et_pb_row _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_margin=&#8221;-7px|auto||auto||&#8221; custom_padding=&#8221;||6px|||&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_text _builder_version=&#8221;4.9.10&#8243; text_text_color=&#8221;#8300E9&#8243; text_font_size=&#8221;30px&#8221; text_line_height=&#8221;1em&#8221; header_font_size=&#8221;27px&#8221; header_2_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_2_font_size=&#8221;80px&#8221; header_2_line_height=&#8221;1.1em&#8221; text_orientation=&#8221;center&#8221; background_layout=&#8221;dark&#8221; min_height=&#8221;71.4px&#8221; custom_margin=&#8221;-37px||-2px|||&#8221; custom_padding=&#8221;25px|19px|3px|20px||&#8221; header_2_font_size_tablet=&#8221;50px&#8221; header_2_font_size_phone=&#8221;30px&#8221; header_2_font_size_last_edited=&#8221;on|phone&#8221; header_2_2_font_size_phone=&#8221;30px&#8221; header_3_2_font_size_phone=&#8221;30px&#8221; header_4_2_font_size_phone=&#8221;30px&#8221; header_5_2_font_size_phone=&#8221;30px&#8221; header_6_2_font_size_phone=&#8221;30px&#8221; header_2_2_font_size_tablet=&#8221;50px&#8221; header_3_2_font_size_tablet=&#8221;50px&#8221; header_4_2_font_size_tablet=&#8221;50px&#8221; header_5_2_font_size_tablet=&#8221;50px&#8221; header_6_2_font_size_tablet=&#8221;50px&#8221; header_2_2_font_size_last_edited=&#8221;on|phone&#8221; header_3_2_font_size_last_edited=&#8221;on|phone&#8221; header_4_2_font_size_last_edited=&#8221;on|phone&#8221; header_5_2_font_size_last_edited=&#8221;on|phone&#8221; header_6_2_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<p><strong>Si te identificas con alguna de estas situaciones<\/strong><\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#FFFFFF&#8221; custom_margin=&#8221;-18px|||||&#8221; custom_padding=&#8221;13px||10px|||&#8221;][et_pb_row column_structure=&#8221;1_3,1_3,1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#FFFFFF&#8221; custom_padding=&#8221;19px|||||&#8221;][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#FFFFFF&#8221;][et_pb_image src=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/OK.png&#8221; title_text=&#8221;OK&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; width=&#8221;25%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;20px||18px||false|false&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_font_size=&#8221;16px&#8221;]<\/p>\n<p>\u00bf<strong>Quieres pautar<\/strong> en Redes sociales o Google y <strong>no sabes c\u00f3mo hacerlo<\/strong>?<\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_image src=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/OK.png&#8221; title_text=&#8221;OK&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; width=&#8221;25%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;20px||18px||false|false&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_font_size=&#8221;16px&#8221;]<\/p>\n<p>\u00bf<strong>Tus campa\u00f1as<\/strong> digitales <strong>no generan los resultados<\/strong> que esperas?<\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;RGBA(0,0,0,0)&#8221;][et_pb_image src=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/OK.png&#8221; title_text=&#8221;OK&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; width=&#8221;25%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;20px||18px||false|false&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_font_size=&#8221;16px&#8221;]<\/p>\n<p>\u00bf<b>Los leads <\/b>que captas son<b> de baja calidad<\/b>?<\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_3,1_3,1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#FFFFFF&#8221; custom_margin=&#8221;-27px|auto||auto||&#8221;][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#FFFFFF&#8221;][et_pb_image src=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/OK.png&#8221; title_text=&#8221;OK&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; width=&#8221;25%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;20px||18px||false|false&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_font_size=&#8221;16px&#8221;]<\/p>\n<p>\u00bf<strong>No sabes como crear avisos<\/strong> que den buenos resultados?<\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_image src=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/OK.png&#8221; title_text=&#8221;OK&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; width=&#8221;25%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;20px||18px||false|false&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_font_size=&#8221;16px&#8221;]<\/p>\n<p>\u00bfTu <strong>p\u00e1gina landing no esta generando los resultados<\/strong> que esperas?<\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;RGBA(0,0,0,0)&#8221;][et_pb_image src=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/OK.png&#8221; title_text=&#8221;OK&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; width=&#8221;25%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;20px||18px||false|false&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_font_size=&#8221;16px&#8221;]<\/p>\n<p>\u00bf<b>Los costos <\/b>de tus campa\u00f1as son<b> demasiado altos<\/b>?<\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_padding=&#8221;2px||9px|||&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_button button_url=&#8221;#contacto&#8221; button_text=&#8221;QUIERO MAS LEADS&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_color=&#8221;#8300E9&#8243; custom_margin=&#8221;33px|||||&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_color=&#8221;#000000&#8243;][\/et_pb_button][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#ffc001&#8243; custom_padding=&#8221;||19px|||&#8221;][et_pb_row _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_margin=&#8221;-30px|auto||auto||&#8221; custom_padding=&#8221;4px||2px|||&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_text _builder_version=&#8221;4.9.10&#8243; header_2_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_2_font_size=&#8221;80px&#8221; header_2_line_height=&#8221;1.1em&#8221; background_layout=&#8221;dark&#8221; header_2_font_size_tablet=&#8221;50px&#8221; header_2_font_size_phone=&#8221;30px&#8221; header_2_font_size_last_edited=&#8221;on|phone&#8221; header_2_2_font_size_phone=&#8221;30px&#8221; header_3_2_font_size_phone=&#8221;30px&#8221; header_4_2_font_size_phone=&#8221;30px&#8221; header_5_2_font_size_phone=&#8221;30px&#8221; header_6_2_font_size_phone=&#8221;30px&#8221; header_2_2_font_size_tablet=&#8221;50px&#8221; header_3_2_font_size_tablet=&#8221;50px&#8221; header_4_2_font_size_tablet=&#8221;50px&#8221; header_5_2_font_size_tablet=&#8221;50px&#8221; header_6_2_font_size_tablet=&#8221;50px&#8221; header_2_2_font_size_last_edited=&#8221;on|phone&#8221; header_3_2_font_size_last_edited=&#8221;on|phone&#8221; header_4_2_font_size_last_edited=&#8221;on|phone&#8221; header_5_2_font_size_last_edited=&#8221;on|phone&#8221; header_6_2_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<h2>ENTONCES NUESTRO SERVICIO 360\u00b0 ES PARA TI<\/h2>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_4,1_4,1_4,1_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_padding=&#8221;2px||17px|||&#8221;][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_blurb title=&#8221;1 &#8211; PLANEAMOS TU ESTRATEGIA&#8221; image=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/Diseno-sin-titulo-4.png&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; header_font=&#8221;|700|||||||&#8221; body_font_size=&#8221;16px&#8221; box_shadow_style_image=&#8221;preset1&#8243;]<\/p>\n<ul>\n<li><span style=\"color: #ffffff;\">Proyectamos tus metas con base en tus recursos.<\/span><\/li>\n<li><span style=\"color: #ffffff;\">Dise\u00f1amos el camino que te llevar\u00e1 a lograr tus resultados.<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_blurb][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_blurb title=&#8221;2 &#8211; CREAMOS AVISOS, LANDING Y VSL&#8221; image=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/05\/Diseno-sin-titulo-2.png&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; header_font=&#8221;|700|||||||&#8221; body_font_size=&#8221;16px&#8221; box_shadow_style_image=&#8221;preset1&#8243;]<\/p>\n<p><span style=\"color: #ffffff;\">Dise\u00f1amos los avisos, p\u00e1gina landing y hasta el VSL que te llevar\u00e1 a lograr tus resultados.<\/span><\/p>\n<p>[\/et_pb_blurb][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_blurb title=&#8221;3 &#8211; CREAMOS Y ADMINISTRAMOS TUS CAMPA\u00d1AS&#8221; image=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/Diseno-sin-titulo-5.png&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; header_font=&#8221;|700|||||||&#8221; body_font_size=&#8221;16px&#8221; box_shadow_style_image=&#8221;preset1&#8243;]<\/p>\n<p><span style=\"color: #ffffff;\">Dise\u00f1amos, creamos, administramos y optimizamos tus campa\u00f1as en META (Facebook e Instagram) y Google\u00a0<\/span><\/p>\n<p>[\/et_pb_blurb][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_blurb title=&#8221;4 &#8211; OPTIMIZAMOS TU  EMBUDO CONTINUAMENTE&#8221; image=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2025\/06\/Diseno-sin-titulo-8.png&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; header_font=&#8221;|700|||||||&#8221; body_font_size=&#8221;16px&#8221; box_shadow_style_image=&#8221;preset1&#8243;]<\/p>\n<p><span style=\"color: #ffffff;\">Continuamente optimizamos todo el embudo de ventas para disminuir costos y mejorar los resultados.<\/span><\/p>\n<p>[\/et_pb_blurb][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_padding=&#8221;7px||7px|||&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_font_size=&#8221;20px&#8221; header_font_size=&#8221;26px&#8221; background_color=&#8221;#FFFFFF&#8221; custom_padding=&#8221;16px|17px|15px|18px||&#8221; border_radii=&#8221;on|10px|10px|10px|10px&#8221; border_width_all=&#8221;1px&#8221; border_color_all=&#8221;#000000&#8243; box_shadow_style=&#8221;preset1&#8243; box_shadow_color=&#8221;#000000&#8243;]<\/p>\n<p style=\"text-align: center;\"><span style=\"color: #000000;\"><em><strong>No somos una agencia, somos consultores especializados: Dise\u00f1amos, desarrollamos y controlamos todo el ciclo de venta digital optimiz\u00e1ndolo continuamente para maximizar tus resultados.<\/strong><\/em><\/span><\/p>\n<p>[\/et_pb_text][et_pb_button button_url=&#8221;#contacto&#8221; button_text=&#8221;QUIERO MAS LEADS&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_color=&#8221;#8300E9&#8243; box_shadow_style=&#8221;preset1&#8243; box_shadow_color=&#8221;#000000&#8243;][\/et_pb_button][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;Intro&#8221; _builder_version=&#8221;4.9.10&#8243; background_color=&#8221;#FFFFFF&#8221; z_index=&#8221;10&#8243; custom_margin=&#8221;-14px|||||&#8221; custom_padding=&#8221;2vw||2vw||false|false&#8221;][et_pb_row _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_padding=&#8221;7px||7px|||&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_text _builder_version=&#8221;4.9.10&#8243; header_letter_spacing=&#8221;-2px&#8221; header_2_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_2_font_size=&#8221;80px&#8221; header_2_line_height=&#8221;1.1em&#8221; background_color=&#8221;#ffcc00&#8243; background_layout=&#8221;dark&#8221; custom_margin=&#8221;-17px||6px|||&#8221; custom_padding=&#8221;16px|15px|9px|12px||&#8221; header_2_font_size_tablet=&#8221;50px&#8221; header_2_font_size_phone=&#8221;30px&#8221; header_2_font_size_last_edited=&#8221;on|phone&#8221; border_radii=&#8221;on|10px|10px|10px|10px&#8221; box_shadow_style=&#8221;preset1&#8243; header_2_2_font_size_phone=&#8221;30px&#8221; header_3_2_font_size_phone=&#8221;30px&#8221; header_4_2_font_size_phone=&#8221;30px&#8221; header_5_2_font_size_phone=&#8221;30px&#8221; header_6_2_font_size_phone=&#8221;30px&#8221; header_2_2_font_size_tablet=&#8221;50px&#8221; header_3_2_font_size_tablet=&#8221;50px&#8221; header_4_2_font_size_tablet=&#8221;50px&#8221; header_5_2_font_size_tablet=&#8221;50px&#8221; header_6_2_font_size_tablet=&#8221;50px&#8221; header_2_2_font_size_last_edited=&#8221;on|phone&#8221; header_3_2_font_size_last_edited=&#8221;on|phone&#8221; header_4_2_font_size_last_edited=&#8221;on|phone&#8221; header_5_2_font_size_last_edited=&#8221;on|phone&#8221; header_6_2_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<h1 style=\"text-align: center;\"><strong>15 A\u00d1OS AYUDANDO A M\u00c1S DE 100 EMPRESAS Y EMPRENDEDORES<\/strong><\/h1>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_2,1_2&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_testimonial author=&#8221;Gloria Chahin&#8221; job_title=&#8221;Gerente General&#8221; company_name=&#8221;Chekar.co&#8221; portrait_url=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2021\/10\/logo-sin-fondo-azul-y-blanco.png&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;]<\/p>\n<p><span>He trabajado durante mas de 8 a\u00f1os con SIM DIGITAL, para el soporte y asesoramiento en diversos temas de mercadeo recibiendo de su parte un trabajo de alta calidad representado en oportunidad, efectividad e innovaci\u00f3n. Quiz\u00e1s una caracter\u00edstica que debo destacar es que hace de los objetivos de MI\u00a0 compa\u00f1\u00eda, SUS objetivos, lo que evidencia el compromiso de su trabajo.<\/span><\/p>\n<p>[\/et_pb_testimonial][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_testimonial author=&#8221;Nadia Soledad&#8221; job_title=&#8221;Gerente de Mercadeo&#8221; company_name=&#8221;Jorge Cortes y Cia&#8221; portrait_url=&#8221;http:\/\/simdigital.co\/wp-content\/uploads\/2021\/10\/Logo-Jorge-Cortes-Mayo-2020-cuadrado.png&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;]<\/p>\n<p><span>Somos aliados comerciales de SIM DIGITAL desde hace m\u00e1s de 4 a\u00f1os, para destacar su servicio al cliente y ejecuci\u00f3n \u00e1gil de actividades solicitadas. Adicionalmente cuentan con un gran conocimiento sobre las tendencias digitales del mercado, siendo muy valiosa su asesor\u00eda en la implementaci\u00f3n de creaci\u00f3n de estrategias que aporten valor para el posicionamiento y ventas de nuestra compa\u00f1\u00eda.<\/span><\/p>\n<p>[\/et_pb_testimonial][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_text _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; text_text_color=&#8221;#FFFFFF&#8221; background_color=&#8221;#8300E9&#8243; custom_padding=&#8221;10px|6px||7px||&#8221;]<\/p>\n<h2 style=\"text-align: center;\"><span style=\"color: #ffffff;\"><strong>ALGUNOS DE NUESTROS CLIENTES<\/strong><\/span><\/h2>\n<p>[\/et_pb_text][et_pb_gallery gallery_ids=&#8221;286,289,288,287,291,292,293,290,296,301,302,297,299,298,295,294,300,304,305,303,308,307,306,314,312,315,313,309,311,310,316,317,321,323,324,325,326&#8243; fullwidth=&#8221;on&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; width=&#8221;47%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_padding=&#8221;4px||0px|||&#8221;][\/et_pb_gallery][\/et_pb_column][\/et_pb_row][et_pb_row module_id=&#8221;contacto&#8221; _builder_version=&#8221;4.9.10&#8243; custom_padding=&#8221;26px||5px|||&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.0.8&#8243;][et_pb_text _builder_version=&#8221;4.9.10&#8243; text_font_size=&#8221;23px&#8221; text_line_height=&#8221;1.2em&#8221; header_font_size=&#8221;27px&#8221; header_2_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_2_font_size=&#8221;80px&#8221; header_2_line_height=&#8221;1.1em&#8221; text_orientation=&#8221;center&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||-2px|||&#8221; custom_padding=&#8221;||10px|||&#8221; header_2_font_size_tablet=&#8221;50px&#8221; header_2_font_size_phone=&#8221;30px&#8221; header_2_font_size_last_edited=&#8221;on|phone&#8221; header_2_2_font_size_phone=&#8221;30px&#8221; header_3_2_font_size_phone=&#8221;30px&#8221; header_4_2_font_size_phone=&#8221;30px&#8221; header_5_2_font_size_phone=&#8221;30px&#8221; header_6_2_font_size_phone=&#8221;30px&#8221; header_2_2_font_size_tablet=&#8221;50px&#8221; header_3_2_font_size_tablet=&#8221;50px&#8221; header_4_2_font_size_tablet=&#8221;50px&#8221; header_5_2_font_size_tablet=&#8221;50px&#8221; header_6_2_font_size_tablet=&#8221;50px&#8221; header_2_2_font_size_last_edited=&#8221;on|phone&#8221; header_3_2_font_size_last_edited=&#8221;on|phone&#8221; header_4_2_font_size_last_edited=&#8221;on|phone&#8221; header_5_2_font_size_last_edited=&#8221;on|phone&#8221; header_6_2_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<p><span style=\"color: #000000;\"><strong>Si tienes un presupuesto m\u00ednimo de USD 400 para tu estrategia digital mensual<\/strong><\/span><\/p>\n<p>[\/et_pb_text][et_pb_text _builder_version=&#8221;4.9.10&#8243; text_font_size=&#8221;37px&#8221; text_letter_spacing=&#8221;-2px&#8221; text_line_height=&#8221;1em&#8221; header_font_size=&#8221;27px&#8221; header_2_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_2_font_size=&#8221;80px&#8221; header_2_line_height=&#8221;1.1em&#8221; text_orientation=&#8221;center&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||-2px|||&#8221; header_2_font_size_tablet=&#8221;50px&#8221; header_2_font_size_phone=&#8221;30px&#8221; header_2_font_size_last_edited=&#8221;on|phone&#8221; header_2_2_font_size_phone=&#8221;30px&#8221; header_3_2_font_size_phone=&#8221;30px&#8221; header_4_2_font_size_phone=&#8221;30px&#8221; header_5_2_font_size_phone=&#8221;30px&#8221; header_6_2_font_size_phone=&#8221;30px&#8221; header_2_2_font_size_tablet=&#8221;50px&#8221; header_3_2_font_size_tablet=&#8221;50px&#8221; header_4_2_font_size_tablet=&#8221;50px&#8221; header_5_2_font_size_tablet=&#8221;50px&#8221; header_6_2_font_size_tablet=&#8221;50px&#8221; header_2_2_font_size_last_edited=&#8221;on|phone&#8221; header_3_2_font_size_last_edited=&#8221;on|phone&#8221; header_4_2_font_size_last_edited=&#8221;on|phone&#8221; header_5_2_font_size_last_edited=&#8221;on|phone&#8221; header_6_2_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<p><strong><span style=\"color: #000000;\"><span style=\"color: #8401e5;\">DILIGENCIA EL FORMULARIO PARA RECIBIR ASESOR\u00cdA<\/span><\/span><\/strong><\/p>\n<p>[\/et_pb_text][et_pb_text _builder_version=&#8221;4.9.10&#8243; text_font_size=&#8221;20px&#8221; text_line_height=&#8221;1.8em&#8221; header_font_size=&#8221;27px&#8221; header_2_font=&#8221;Roboto Condensed|700||on|||||&#8221; header_2_font_size=&#8221;80px&#8221; header_2_line_height=&#8221;1.1em&#8221; text_orientation=&#8221;center&#8221; background_layout=&#8221;dark&#8221; custom_padding=&#8221;||28px|||&#8221; header_2_font_size_tablet=&#8221;50px&#8221; header_2_font_size_phone=&#8221;30px&#8221; header_2_font_size_last_edited=&#8221;on|phone&#8221; header_2_2_font_size_phone=&#8221;30px&#8221; header_3_2_font_size_phone=&#8221;30px&#8221; header_4_2_font_size_phone=&#8221;30px&#8221; header_5_2_font_size_phone=&#8221;30px&#8221; header_6_2_font_size_phone=&#8221;30px&#8221; header_2_2_font_size_tablet=&#8221;50px&#8221; header_3_2_font_size_tablet=&#8221;50px&#8221; header_4_2_font_size_tablet=&#8221;50px&#8221; header_5_2_font_size_tablet=&#8221;50px&#8221; header_6_2_font_size_tablet=&#8221;50px&#8221; header_2_2_font_size_last_edited=&#8221;on|phone&#8221; header_3_2_font_size_last_edited=&#8221;on|phone&#8221; header_4_2_font_size_last_edited=&#8221;on|phone&#8221; header_5_2_font_size_last_edited=&#8221;on|phone&#8221; header_6_2_font_size_last_edited=&#8221;on|phone&#8221;]<\/p>\n<p><span style=\"color: #000000;\"><\/span><\/p>\n<p><span style=\"color: #000000;\">Para conocer tus expectativas, determinar lo que necesitas para lograr tus objetivos y saber c\u00f3mo te podemos ayudar &#8230;\u00a0<\/span><span style=\"color: #000000;\"><strong>EN ESTA ASESOR\u00cdA<\/strong> <strong>NO TE VAMOS A VENDER NADA<\/strong>,\u00a0<\/span><span style=\"color: #000000;\">solo queremos saber si te podemos ayudar.<\/span><\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_padding=&#8221;7px||7px|||&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221;][et_pb_contact_form captcha=&#8221;off&#8221; email=&#8221;simdecolombia@gmail.com&#8221; success_message=&#8221;Tu mensaje Ha sido enviado, te contactaremos por WP&#8221; submit_button_text=&#8221;Enviar&#8221; _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_color=&#8221;#8300E9&#8243; button_border_color=&#8221;#FFFFFF&#8221; module_alignment=&#8221;right&#8221;][et_pb_contact_field field_id=&#8221;Nombre&#8221; field_title=&#8221;Nombre y apellido&#8221; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;celular&#8221; field_title=&#8221;N\u00famero de Whatsapp&#8221; min_length=&#8221;10&#8243; max_length=&#8221;10&#8243; allowed_symbols=&#8221;numbers&#8221; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;Email&#8221; field_title=&#8221;Correo electr\u00f3nico&#8221; field_type=&#8221;email&#8221; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;Producto&#8221; field_title=&#8221;\u00bfQu\u00e9 comercializas?&#8221; field_type=&#8221;select&#8221; select_options=&#8221;%91{%22value%22:%22Vendo infoproductos%22,%22checked%22:0,%22dragID%22:-1},{%22value%22:%22Servicios de coaching%22,%22checked%22:0,%22dragID%22:0},{%22value%22:%22Servicios%22,%22checked%22:0,%22dragID%22:1},{%22value%22:%22Productos F\u00edsicos%22,%22checked%22:0,%22dragID%22:2}%93&#8243; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;ticket&#8221; field_title=&#8221;Ticket promedio&#8221; field_type=&#8221;select&#8221; select_options=&#8221;%91{%22value%22:%22Hasta USD 20%22,%22checked%22:0,%22dragID%22:-1},{%22value%22:%22Entre USD 20 y USD 50%22,%22checked%22:0,%22dragID%22:0},{%22value%22:%22Entre USD 50 Y USD 100%22,%22checked%22:0,%22dragID%22:1},{%22value%22:%22Entre USD 100 y USD 250%22,%22checked%22:0,%22dragID%22:2},{%22value%22:%22Entre USD 250 y USD 500%22,%22checked%22:0,%22dragID%22:3},{%22value%22:%22Entre USD 500 y USD 1000%22,%22checked%22:0,%22dragID%22:4},{%22value%22:%22M\u00e1s de USD 1000%22,%22checked%22:0,%22dragID%22:5}%93&#8243; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;web&#8221; field_title=&#8221;P\u00e1gina web o Instagram o FanPage&#8221; required_mark=&#8221;off&#8221; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;Historia&#8221; field_title=&#8221;\u00bfHas realizado campa\u00f1as de publicidad anteriormente?&#8221; field_type=&#8221;select&#8221; select_options=&#8221;%91{%22value%22:%22Si%22,%22checked%22:0,%22dragID%22:-1},{%22value%22:%22No%22,%22checked%22:0,%22dragID%22:0}%93&#8243; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;presupuesto&#8221; field_title=&#8221;Presupuesto de inversi\u00f3n&#8221; field_type=&#8221;radio&#8221; radio_options=&#8221;%91{%22value%22:%22Entre USD 400 y USD 600 mensuales%22,%22checked%22:0,%22dragID%22:-1},{%22value%22:%22Entre USD 600 y USD 800 mensuales%22,%22checked%22:0,%22dragID%22:0},{%22value%22:%22Entre USD 800 y USD 1000 mensuales%22,%22checked%22:0,%22dragID%22:1},{%22dragID%22:2,%22value%22:%22Entre USD 1000 y USD1500 mesnuales%22,%22checked%22:0},{%22dragID%22:3,%22value%22:%22Mas de USD 1500 mensuales%22,%22checked%22:0}%93&#8243; fullwidth_field=&#8221;on&#8221; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][et_pb_contact_field field_id=&#8221;Message&#8221; field_title=&#8221;Cu\u00e9ntanos sobre tu negocio&#8221; field_type=&#8221;text&#8221; fullwidth_field=&#8221;on&#8221; _builder_version=&#8221;4.9.10&#8243; button_text_size__hover_enabled=&#8221;off&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;off&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_contact_field][\/et_pb_contact_form][et_pb_code _builder_version=&#8221;4.9.10&#8243; _module_preset=&#8221;default&#8221; hover_enabled=&#8221;0&#8243; sticky_enabled=&#8221;0&#8243;]import React, { useMemo, useState, useEffect } from &#8220;react&#8221;;<!-- [et_pb_line_break_holder] -->import * as XLSX from &#8220;xlsx&#8221;;<!-- [et_pb_line_break_holder] -->import {<!-- [et_pb_line_break_holder] -->  BarChart,<!-- [et_pb_line_break_holder] -->  Bar,<!-- [et_pb_line_break_holder] -->  LineChart,<!-- [et_pb_line_break_holder] -->  Line,<!-- [et_pb_line_break_holder] -->  XAxis,<!-- [et_pb_line_break_holder] -->  YAxis,<!-- [et_pb_line_break_holder] -->  CartesianGrid,<!-- [et_pb_line_break_holder] -->  Tooltip as RTooltip,<!-- [et_pb_line_break_holder] -->  ResponsiveContainer,<!-- [et_pb_line_break_holder] -->  Legend,<!-- [et_pb_line_break_holder] -->} from &#8220;recharts&#8221;;<!-- [et_pb_line_break_holder] -->import { Card, CardContent, CardHeader, CardTitle } from &#8220;@\/components\/ui\/card&#8221;;<!-- [et_pb_line_break_holder] -->import { Button } from &#8220;@\/components\/ui\/button&#8221;;<!-- [et_pb_line_break_holder] -->import { Input } from &#8220;@\/components\/ui\/input&#8221;;<!-- [et_pb_line_break_holder] -->import {<!-- [et_pb_line_break_holder] -->  DropdownMenu,<!-- [et_pb_line_break_holder] -->  DropdownMenuCheckboxItem,<!-- [et_pb_line_break_holder] -->  DropdownMenuContent,<!-- [et_pb_line_break_holder] -->  DropdownMenuTrigger,<!-- [et_pb_line_break_holder] -->} from &#8220;@\/components\/ui\/dropdown-menu&#8221;;<!-- [et_pb_line_break_holder] -->import { X, UploadCloud, Filter, Trash2, ChevronDown, Beaker } from &#8220;lucide-react&#8221;;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ =====================================<!-- [et_pb_line_break_holder] -->\/\/ Helpers<!-- [et_pb_line_break_holder] -->\/\/ =====================================<!-- [et_pb_line_break_holder] -->function toNumber(val: any): number {<!-- [et_pb_line_break_holder] -->  if (val === undefined || val === null || val === &#8220;&#8221;) return 0;<!-- [et_pb_line_break_holder] -->  if (typeof val === &#8220;number&#8221;) return val;<!-- [et_pb_line_break_holder] -->  const cleaned = String(val).replace(\/[^0-9,.-]\/g, &#8220;&#8221;).replace(\/,\/g, &#8220;.&#8221;);<!-- [et_pb_line_break_holder] -->  const n = parseFloat(cleaned);<!-- [et_pb_line_break_holder] -->  return isNaN(n) ? 0 : n;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function average(arr: number[]): number {<!-- [et_pb_line_break_holder] -->  if (!arr.length) return 0;<!-- [et_pb_line_break_holder] -->  return arr.reduce((a, b) => a + b, 0) \/ arr.length;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function formatNumber(n: number): string {<!-- [et_pb_line_break_holder] -->  return n.toLocaleString(&#8220;es-CO&#8221;, { maximumFractionDigits: 0 });<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function formatPercent(n: number, maxDigits = 2): string {<!-- [et_pb_line_break_holder] -->  return `${n.toLocaleString(&#8220;es-CO&#8221;, { maximumFractionDigits: maxDigits })}%`;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function formatCurrency(n: number): string {<!-- [et_pb_line_break_holder] -->  return n.toLocaleString(&#8220;es-CO&#8221;, {<!-- [et_pb_line_break_holder] -->    style: &#8220;currency&#8221;,<!-- [et_pb_line_break_holder] -->    currency: &#8220;COP&#8221;,<!-- [et_pb_line_break_holder] -->    maximumFractionDigits: 0,<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Map row by column letters (A,B,C,G,J,K,L,N)<!-- [et_pb_line_break_holder] -->function mapRowByColumns(rowObjOrArray: any) {<!-- [et_pb_line_break_holder] -->  if (Array.isArray(rowObjOrArray)) {<!-- [et_pb_line_break_holder] -->    return {<!-- [et_pb_line_break_holder] -->      A: rowObjOrArray[0],<!-- [et_pb_line_break_holder] -->      B: rowObjOrArray[1],<!-- [et_pb_line_break_holder] -->      C: rowObjOrArray[2],<!-- [et_pb_line_break_holder] -->      G: toNumber(rowObjOrArray[6]),<!-- [et_pb_line_break_holder] -->      J: toNumber(rowObjOrArray[9]),<!-- [et_pb_line_break_holder] -->      K: toNumber(rowObjOrArray[10]),<!-- [et_pb_line_break_holder] -->      L: toNumber(rowObjOrArray[11]),<!-- [et_pb_line_break_holder] -->      N: toNumber(rowObjOrArray[13]),<!-- [et_pb_line_break_holder] -->    };<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  const keys = Object.keys(rowObjOrArray);<!-- [et_pb_line_break_holder] -->  const byName = (nameIncludes: string) => {<!-- [et_pb_line_break_holder] -->    const key = keys.find((k) => k.toLowerCase().includes(nameIncludes));<!-- [et_pb_line_break_holder] -->    return key ? rowObjOrArray[key] : undefined;<!-- [et_pb_line_break_holder] -->  };<!-- [et_pb_line_break_holder] -->  return {<!-- [et_pb_line_break_holder] -->    A: rowObjOrArray[&#8220;A&#8221;] ?? byName(&#8220;campa\u00f1a&#8221;) ?? byName(&#8220;campaign&#8221;) ?? byName(&#8220;nombre&#8221;),<!-- [et_pb_line_break_holder] -->    B: rowObjOrArray[&#8220;B&#8221;] ?? byName(&#8220;edad&#8221;) ?? byName(&#8220;age&#8221;),<!-- [et_pb_line_break_holder] -->    C: rowObjOrArray[&#8220;C&#8221;] ?? byName(&#8220;sexo&#8221;) ?? byName(&#8220;gender&#8221;),<!-- [et_pb_line_break_holder] -->    G: toNumber(rowObjOrArray[&#8220;G&#8221;] ?? byName(&#8220;impres&#8221;) ?? byName(&#8220;impre&#8221;)),<!-- [et_pb_line_break_holder] -->    J: toNumber(rowObjOrArray[&#8220;J&#8221;] ?? byName(&#8220;resultado&#8221;) ?? byName(&#8220;results&#8221;)),<!-- [et_pb_line_break_holder] -->    K: toNumber(rowObjOrArray[&#8220;K&#8221;] ?? byName(&#8220;invers&#8221;) ?? byName(&#8220;spend&#8221;) ?? byName(&#8220;costo&#8221;)),<!-- [et_pb_line_break_holder] -->    L: toNumber(rowObjOrArray[&#8220;L&#8221;] ?? byName(&#8220;cpm&#8221;)),<!-- [et_pb_line_break_holder] -->    N: toNumber(rowObjOrArray[&#8220;N&#8221;] ?? byName(&#8220;clics&#8221;) ?? byName(&#8220;enlace&#8221;) ?? byName(&#8220;link&#8221;)),<!-- [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] -->\/\/ UI Subcomponents<!-- [et_pb_line_break_holder] -->\/\/ =====================================<!-- [et_pb_line_break_holder] -->function Metric({<!-- [et_pb_line_break_holder] -->  label,<!-- [et_pb_line_break_holder] -->  value,<!-- [et_pb_line_break_holder] -->  hint,<!-- [et_pb_line_break_holder] -->  tooltipTitle,<!-- [et_pb_line_break_holder] -->}: {<!-- [et_pb_line_break_holder] -->  label: string;<!-- [et_pb_line_break_holder] -->  value: React.ReactNode;<!-- [et_pb_line_break_holder] -->  hint?: string;<!-- [et_pb_line_break_holder] -->  tooltipTitle?: string;<!-- [et_pb_line_break_holder] -->}) {<!-- [et_pb_line_break_holder] -->  return (<!-- [et_pb_line_break_holder] -->    <Card<!-- [et_pb_line_break_holder] -->      className=&#8221;backdrop-blur-xl bg-neutral-900\/60 border border-neutral-700 shadow-xl hover:shadow-2xl transition-all duration-200&#8243;<!-- [et_pb_line_break_holder] -->      title={tooltipTitle}<!-- [et_pb_line_break_holder] -->    ><!-- [et_pb_line_break_holder] -->      <CardHeader><!-- [et_pb_line_break_holder] -->        <CardTitle className=\"text-sm text-white font-medium\">{label}<\/CardTitle><!-- [et_pb_line_break_holder] -->      <\/CardHeader><!-- [et_pb_line_break_holder] -->      <CardContent><!-- [et_pb_line_break_holder] -->        <\/p>\n<div className=\"text-3xl md:text-4xl font-bold text-white\">{value}<\/div>\n<p><!-- [et_pb_line_break_holder] -->        {hint ? <\/p>\n<div className=\"text-xs mt-1 text-white\/90\">{hint}<\/div>\n<p> : null}<!-- [et_pb_line_break_holder] -->      <\/CardContent><!-- [et_pb_line_break_holder] -->    <\/Card><!-- [et_pb_line_break_holder] -->  );<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function Chip({ children, onRemove }: { children: React.ReactNode; onRemove?: () => void }) {<!-- [et_pb_line_break_holder] -->  return (<!-- [et_pb_line_break_holder] -->    <span className=\"inline-flex items-center gap-1 px-2 py-1 rounded-full text-xs bg-neutral-800 text-white border border-neutral-700\"><!-- [et_pb_line_break_holder] -->      {children}<!-- [et_pb_line_break_holder] -->      {onRemove &#038;&#038; (<!-- [et_pb_line_break_holder] -->        <button onClick={onRemove} className=\"hover:opacity-80\" aria-label=\"remove\"><!-- [et_pb_line_break_holder] -->          <X className=\"w-3 h-3\" \/><!-- [et_pb_line_break_holder] -->        <\/button><!-- [et_pb_line_break_holder] -->      )}<!-- [et_pb_line_break_holder] -->    <\/span><!-- [et_pb_line_break_holder] -->  );<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function FilterDropdown({<!-- [et_pb_line_break_holder] -->  label,<!-- [et_pb_line_break_holder] -->  options,<!-- [et_pb_line_break_holder] -->  selected,<!-- [et_pb_line_break_holder] -->  onToggle,<!-- [et_pb_line_break_holder] -->}: {<!-- [et_pb_line_break_holder] -->  label: string;<!-- [et_pb_line_break_holder] -->  options: string[];<!-- [et_pb_line_break_holder] -->  selected: string[];<!-- [et_pb_line_break_holder] -->  onToggle: (v: string) => void;<!-- [et_pb_line_break_holder] -->}) {<!-- [et_pb_line_break_holder] -->  return (<!-- [et_pb_line_break_holder] -->    <DropdownMenu><!-- [et_pb_line_break_holder] -->      <DropdownMenuTrigger asChild><!-- [et_pb_line_break_holder] -->        <Button variant=\"secondary\" className=\"bg-[#747474] text-white hover:opacity-90\"><!-- [et_pb_line_break_holder] -->          <Filter className=\"w-4 h-4 mr-2\" \/> {label}<!-- [et_pb_line_break_holder] -->          <ChevronDown className=\"w-4 h-4 ml-2\" \/><!-- [et_pb_line_break_holder] -->        <\/Button><!-- [et_pb_line_break_holder] -->      <\/DropdownMenuTrigger><!-- [et_pb_line_break_holder] -->      <DropdownMenuContent className=\"w-64 bg-neutral-900 text-white border border-neutral-700 max-h-80 overflow-auto\"><!-- [et_pb_line_break_holder] -->        {options.length ? (<!-- [et_pb_line_break_holder] -->          options.map((val) => (<!-- [et_pb_line_break_holder] -->            <DropdownMenuCheckboxItem<!-- [et_pb_line_break_holder] -->              key={val}<!-- [et_pb_line_break_holder] -->              checked={selected.includes(val)}<!-- [et_pb_line_break_holder] -->              onCheckedChange={() => onToggle(val)}<!-- [et_pb_line_break_holder] -->              className=&#8221;focus:bg-neutral-800 focus:text-white&#8221;<!-- [et_pb_line_break_holder] -->            ><!-- [et_pb_line_break_holder] -->              {val}<!-- [et_pb_line_break_holder] -->            <\/DropdownMenuCheckboxItem><!-- [et_pb_line_break_holder] -->          ))<!-- [et_pb_line_break_holder] -->        ) : (<!-- [et_pb_line_break_holder] -->          <\/p>\n<div className=\"px-3 py-2 text-sm text-white\/80\">Carga un archivo para ver opciones\u2026<\/div>\n<p><!-- [et_pb_line_break_holder] -->        )}<!-- [et_pb_line_break_holder] -->      <\/DropdownMenuContent><!-- [et_pb_line_break_holder] -->    <\/DropdownMenu><!-- [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] -->\/\/ Main Component<!-- [et_pb_line_break_holder] -->\/\/ =====================================<!-- [et_pb_line_break_holder] -->export default function DashboardExcelCampaigns() {<!-- [et_pb_line_break_holder] -->  const [rows, setRows] = useState<any[]>([]);<!-- [et_pb_line_break_holder] -->  const [filters, setFilters] = useState<{ A: string[]; B: string[]; C: string[] }>({ A: [], B: [], C: [] });<!-- [et_pb_line_break_holder] -->  const [fileName, setFileName] = useState(&#8220;&#8221;);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Unique values for dropdowns<!-- [et_pb_line_break_holder] -->  const uniqueValues = useMemo(() => {<!-- [et_pb_line_break_holder] -->    const setA = new Set<string>();<!-- [et_pb_line_break_holder] -->    const setB = new Set<string>();<!-- [et_pb_line_break_holder] -->    const setC = new Set<string>();<!-- [et_pb_line_break_holder] -->    rows.forEach((r) => {<!-- [et_pb_line_break_holder] -->      if (r.A !== undefined &#038;&#038; r.A !== null &#038;&#038; r.A !== &#8220;&#8221;) setA.add(String(r.A));<!-- [et_pb_line_break_holder] -->      if (r.B !== undefined &#038;&#038; r.B !== null &#038;&#038; r.B !== &#8220;&#8221;) setB.add(String(r.B));<!-- [et_pb_line_break_holder] -->      if (r.C !== undefined &#038;&#038; r.C !== null &#038;&#038; r.C !== &#8220;&#8221;) setC.add(String(r.C));<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->    return {<!-- [et_pb_line_break_holder] -->      A: Array.from(setA).sort((a, b) => a.localeCompare(b)),<!-- [et_pb_line_break_holder] -->      B: Array.from(setB).sort((a, b) => a.localeCompare(b)),<!-- [et_pb_line_break_holder] -->      C: Array.from(setC).sort((a, b) => a.localeCompare(b)),<!-- [et_pb_line_break_holder] -->    };<!-- [et_pb_line_break_holder] -->  }, [rows]);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Filtered data<!-- [et_pb_line_break_holder] -->  const filtered = useMemo(() => {<!-- [et_pb_line_break_holder] -->    return rows.filter((r) => {<!-- [et_pb_line_break_holder] -->      const okA = filters.A.length ? filters.A.includes(String(r.A)) : true;<!-- [et_pb_line_break_holder] -->      const okB = filters.B.length ? filters.B.includes(String(r.B)) : true;<!-- [et_pb_line_break_holder] -->      const okC = filters.C.length ? filters.C.includes(String(r.C)) : true;<!-- [et_pb_line_break_holder] -->      return okA &#038;&#038; okB &#038;&#038; okC;<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->  }, [rows, filters]);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Metrics<!-- [et_pb_line_break_holder] -->  const metrics = useMemo(() => {<!-- [et_pb_line_break_holder] -->    const sumG = filtered.reduce((acc, r) => acc + toNumber(r.G), 0);<!-- [et_pb_line_break_holder] -->    const sumK = filtered.reduce((acc, r) => acc + toNumber(r.K), 0);<!-- [et_pb_line_break_holder] -->    const sumJ = filtered.reduce((acc, r) => acc + toNumber(r.J), 0);<!-- [et_pb_line_break_holder] -->    const sumN = filtered.reduce((acc, r) => acc + toNumber(r.N), 0);<!-- [et_pb_line_break_holder] -->    const avgL = average(filtered.map((r) => toNumber(r.L)).filter((v) => v > 0));<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    const ctr = sumG > 0 ? (sumN \/ sumG) * 100 : 0;<!-- [et_pb_line_break_holder] -->    const cpr = sumJ > 0 ? sumK \/ sumJ : 0;<!-- [et_pb_line_break_holder] -->    const efectPct = sumN > 0 ? (sumJ \/ sumN) * 100 : 0;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    return {<!-- [et_pb_line_break_holder] -->      impresiones: sumG,<!-- [et_pb_line_break_holder] -->      inversion: sumK,<!-- [et_pb_line_break_holder] -->      resultados: sumJ,<!-- [et_pb_line_break_holder] -->      ctr,<!-- [et_pb_line_break_holder] -->      cpr,<!-- [et_pb_line_break_holder] -->      cpm: avgL,<!-- [et_pb_line_break_holder] -->      efectividad: efectPct,<!-- [et_pb_line_break_holder] -->    };<!-- [et_pb_line_break_holder] -->  }, [filtered]);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Charts data (impresiones y resultados agregados por B y C)<!-- [et_pb_line_break_holder] -->  const chartByAge = useMemo(() => {<!-- [et_pb_line_break_holder] -->    const map = new Map<string, { impresiones: number; resultados: number }>();<!-- [et_pb_line_break_holder] -->    filtered.forEach((r) => {<!-- [et_pb_line_break_holder] -->      const key = String(r.B ?? &#8220;&#8221;);<!-- [et_pb_line_break_holder] -->      const g = map.get(key) || { impresiones: 0, resultados: 0 };<!-- [et_pb_line_break_holder] -->      g.impresiones += toNumber(r.G);<!-- [et_pb_line_break_holder] -->      g.resultados += toNumber(r.J);<!-- [et_pb_line_break_holder] -->      map.set(key, g);<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->    return Array.from(map.entries()).map(([name, vals]) => ({<!-- [et_pb_line_break_holder] -->      name,<!-- [et_pb_line_break_holder] -->      impresiones: vals.impresiones,<!-- [et_pb_line_break_holder] -->      resultados: vals.resultados,<!-- [et_pb_line_break_holder] -->    }));<!-- [et_pb_line_break_holder] -->  }, [filtered]);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  const chartBySex = useMemo(() => {<!-- [et_pb_line_break_holder] -->    const map = new Map<string, { impresiones: number; resultados: number }>();<!-- [et_pb_line_break_holder] -->    filtered.forEach((r) => {<!-- [et_pb_line_break_holder] -->      const key = String(r.C ?? &#8220;&#8221;);<!-- [et_pb_line_break_holder] -->      const g = map.get(key) || { impresiones: 0, resultados: 0 };<!-- [et_pb_line_break_holder] -->      g.impresiones += toNumber(r.G);<!-- [et_pb_line_break_holder] -->      g.resultados += toNumber(r.J);<!-- [et_pb_line_break_holder] -->      map.set(key, g);<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->    return Array.from(map.entries()).map(([name, vals]) => ({<!-- [et_pb_line_break_holder] -->      name,<!-- [et_pb_line_break_holder] -->      impresiones: vals.impresiones,<!-- [et_pb_line_break_holder] -->      resultados: vals.resultados,<!-- [et_pb_line_break_holder] -->    }));<!-- [et_pb_line_break_holder] -->  }, [filtered]);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Table rows (AGREGADAS POR CAMPA\u00d1A)<!-- [et_pb_line_break_holder] -->  const tableData = useMemo(() => {<!-- [et_pb_line_break_holder] -->    const groups = new Map<<!-- [et_pb_line_break_holder] -->      string,<!-- [et_pb_line_break_holder] -->      { impresiones: number; inversion: number; resultados: number; clicks: number; cpmVals: number[] }<!-- [et_pb_line_break_holder] -->    >();<!-- [et_pb_line_break_holder] -->    filtered.forEach((r) => {<!-- [et_pb_line_break_holder] -->      const camp = String(r.A ?? &#8220;&#8221;);<!-- [et_pb_line_break_holder] -->      const g =<!-- [et_pb_line_break_holder] -->        groups.get(camp) || { impresiones: 0, inversion: 0, resultados: 0, clicks: 0, cpmVals: [] };<!-- [et_pb_line_break_holder] -->      g.impresiones += toNumber(r.G);<!-- [et_pb_line_break_holder] -->      g.inversion += toNumber(r.K);<!-- [et_pb_line_break_holder] -->      g.resultados += toNumber(r.J);<!-- [et_pb_line_break_holder] -->      g.clicks += toNumber(r.N);<!-- [et_pb_line_break_holder] -->      const l = toNumber(r.L);<!-- [et_pb_line_break_holder] -->      if (l > 0) g.cpmVals.push(l);<!-- [et_pb_line_break_holder] -->      groups.set(camp, g);<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    const rowsAgg = Array.from(groups.entries()).map(([campa\u00f1a, g]) => {<!-- [et_pb_line_break_holder] -->      const ctr = g.impresiones > 0 ? (g.clicks \/ g.impresiones) * 100 : 0;<!-- [et_pb_line_break_holder] -->      const cpr = g.resultados > 0 ? g.inversion \/ g.resultados : 0;<!-- [et_pb_line_break_holder] -->      const cpm = g.cpmVals.length ? average(g.cpmVals) : 0;<!-- [et_pb_line_break_holder] -->      return { campa\u00f1a, impresiones: g.impresiones, inversion: g.inversion, resultados: g.resultados, ctr, cpm, cpr };<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    return rowsAgg.sort((a, b) => a.campa\u00f1a.localeCompare(b.campa\u00f1a));<!-- [et_pb_line_break_holder] -->  }, [filtered]);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ =====================<!-- [et_pb_line_break_holder] -->  \/\/ File handling &#038; actions<!-- [et_pb_line_break_holder] -->  \/\/ =====================<!-- [et_pb_line_break_holder] -->  function handleFile(e: React.ChangeEvent<HTMLInputElement>) {<!-- [et_pb_line_break_holder] -->    const file = e.target.files?.[0];<!-- [et_pb_line_break_holder] -->    if (!file) return;<!-- [et_pb_line_break_holder] -->    setFileName(file.name);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    const reader = new FileReader();<!-- [et_pb_line_break_holder] -->    reader.onload = (evt) => {<!-- [et_pb_line_break_holder] -->      const data = new Uint8Array((evt.target as any).result);<!-- [et_pb_line_break_holder] -->      const wb = XLSX.read(data, { type: &#8220;array&#8221; });<!-- [et_pb_line_break_holder] -->      const ws = wb.Sheets[wb.SheetNames[0]];<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->      let parsed: any[] = [];<!-- [et_pb_line_break_holder] -->      try {<!-- [et_pb_line_break_holder] -->        const aoa = XLSX.utils.sheet_to_json(ws, { header: 1, raw: false }) as any[];<!-- [et_pb_line_break_holder] -->        const body = aoa.filter(<!-- [et_pb_line_break_holder] -->          (row: any) =><!-- [et_pb_line_break_holder] -->            Array.isArray(row) &#038;&#038; row.some((cell: any) => cell !== undefined &#038;&#038; cell !== null &#038;&#038; String(cell).trim() !== &#8220;&#8221;)<!-- [et_pb_line_break_holder] -->        );<!-- [et_pb_line_break_holder] -->        let startIdx = 0;<!-- [et_pb_line_break_holder] -->        if (body.length) {<!-- [et_pb_line_break_holder] -->          const likelyHeader = body[0].every((c: any) => typeof c === &#8220;string&#8221;);<!-- [et_pb_line_break_holder] -->          if (likelyHeader) startIdx = 1;<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->        parsed = body.slice(startIdx).map((r: any) => mapRowByColumns(r));<!-- [et_pb_line_break_holder] -->      } catch (err) {<!-- [et_pb_line_break_holder] -->        const objRows = XLSX.utils.sheet_to_json(ws, { defval: &#8220;&#8221; });<!-- [et_pb_line_break_holder] -->        parsed = (objRows as any[]).map((r) => mapRowByColumns(r));<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->      setRows(parsed);<!-- [et_pb_line_break_holder] -->      setFilters({ A: [], B: [], C: [] });<!-- [et_pb_line_break_holder] -->    };<!-- [et_pb_line_break_holder] -->    reader.readAsArrayBuffer(file);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  function toggleFilter(key: &#8220;A&#8221; | &#8220;B&#8221; | &#8220;C&#8221;, value: string) {<!-- [et_pb_line_break_holder] -->    setFilters((prev) => {<!-- [et_pb_line_break_holder] -->      const list = new Set(prev[key]);<!-- [et_pb_line_break_holder] -->      if (list.has(value)) list.delete(value);<!-- [et_pb_line_break_holder] -->      else list.add(value);<!-- [et_pb_line_break_holder] -->      return { &#8230;prev, [key]: Array.from(list) };<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  function clearFilters() {<!-- [et_pb_line_break_holder] -->    setFilters({ A: [], B: [], C: [] });<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  function clearData() {<!-- [et_pb_line_break_holder] -->    setRows([]);<!-- [et_pb_line_break_holder] -->    setFilters({ A: [], B: [], C: [] });<!-- [et_pb_line_break_holder] -->    setFileName(&#8220;&#8221;);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ =====================<!-- [et_pb_line_break_holder] -->  \/\/ Demo data &#038; Tests<!-- [et_pb_line_break_holder] -->  \/\/ =====================<!-- [et_pb_line_break_holder] -->  const demoRows = [<!-- [et_pb_line_break_holder] -->    { A: &#8220;Campa\u00f1a Alfa&#8221;, B: &#8220;18-24&#8221;, C: &#8220;Femenino&#8221;, G: 10000, J: 200, K: 500000, L: 50000, N: 800 },<!-- [et_pb_line_break_holder] -->    { A: &#8220;Campa\u00f1a Beta&#8221;, B: &#8220;25-34&#8221;, C: &#8220;Masculino&#8221;, G: 8000, J: 120, K: 300000, L: 45000, N: 560 },<!-- [et_pb_line_break_holder] -->    { A: &#8220;Campa\u00f1a Beta&#8221;, B: &#8220;25-34&#8221;, C: &#8220;Femenino&#8221;, G: 7000, J: 90, K: 270000, L: 42000, N: 420 },<!-- [et_pb_line_break_holder] -->  ];<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  function loadDemo() {<!-- [et_pb_line_break_holder] -->    setRows(demoRows);<!-- [et_pb_line_break_holder] -->    setFileName(&#8220;demo.xlsx (simulado)&#8221;);<!-- [et_pb_line_break_holder] -->    setFilters({ A: [], B: [], C: [] });<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  function runDevTests() {<!-- [et_pb_line_break_holder] -->    \/\/ Smoke tests sobre demoRows<!-- [et_pb_line_break_holder] -->    const sumG = demoRows.reduce((s, r) => s + r.G, 0); \/\/ 25000<!-- [et_pb_line_break_holder] -->    const sumN = demoRows.reduce((s, r) => s + r.N, 0); \/\/ 1780<!-- [et_pb_line_break_holder] -->    const sumK = demoRows.reduce((s, r) => s + r.K, 0); \/\/ 1,070,000<!-- [et_pb_line_break_holder] -->    const sumJ = demoRows.reduce((s, r) => s + r.J, 0); \/\/ 410<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    console.assert(sumG === 25000, `Impresiones esperadas 25000, obtuvo ${sumG}`);<!-- [et_pb_line_break_holder] -->    console.assert(sumJ === 410, `Resultados esperados 410, obtuvo ${sumJ}`);<!-- [et_pb_line_break_holder] -->    console.assert(sumK === 1070000, `Inversi\u00f3n esperada 1070000, obtuvo ${sumK}`);<!-- [et_pb_line_break_holder] -->    const ctr = sumG > 0 ? (sumN \/ sumG) * 100 : 0;<!-- [et_pb_line_break_holder] -->    console.assert(Math.round(ctr) === Math.round((1780 \/ 25000) * 100), `CTR no coincide`);<!-- [et_pb_line_break_holder] -->    const cpr = sumJ > 0 ? sumK \/ sumJ : 0;<!-- [et_pb_line_break_holder] -->    console.assert(Math.round(cpr) === Math.round(1070000 \/ 410), `CPR no coincide`);<!-- [et_pb_line_break_holder] -->    const efect = sumN > 0 ? (sumJ \/ sumN) * 100 : 0;<!-- [et_pb_line_break_holder] -->    console.assert(Math.round(efect) === Math.round((410 \/ 1780) * 100), `Efectividad no coincide`);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Test extra: agregaci\u00f3n por campa\u00f1a (no desagregar por edad\/sexo)<!-- [et_pb_line_break_holder] -->    const agg: Record<string, { G: number; K: number; J: number; N: number; L: number[] }> = {};<!-- [et_pb_line_break_holder] -->    for (const r of demoRows) {<!-- [et_pb_line_break_holder] -->      const key = r.A;<!-- [et_pb_line_break_holder] -->      agg[key] = agg[key] || { G: 0, K: 0, J: 0, N: 0, L: [] };<!-- [et_pb_line_break_holder] -->      agg[key].G += r.G;<!-- [et_pb_line_break_holder] -->      agg[key].K += r.K;<!-- [et_pb_line_break_holder] -->      agg[key].J += r.J;<!-- [et_pb_line_break_holder] -->      agg[key].N += r.N;<!-- [et_pb_line_break_holder] -->      if (r.L > 0) agg[key].L.push(r.L);<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    const beta = agg[&#8220;Campa\u00f1a Beta&#8221;];<!-- [et_pb_line_break_holder] -->    console.assert(beta.G === 15000 &#038;&#038; beta.J === 210, &#8220;Agregaci\u00f3n por campa\u00f1a (Beta) incorrecta&#8221;);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  useEffect(() => {<!-- [et_pb_line_break_holder] -->    runDevTests();<!-- [et_pb_line_break_holder] -->  }, []);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ =====================================<!-- [et_pb_line_break_holder] -->  \/\/ Render<!-- [et_pb_line_break_holder] -->  \/\/ =====================================<!-- [et_pb_line_break_holder] -->  return (<!-- [et_pb_line_break_holder] -->    <\/p>\n<div className=\"min-h-screen w-full bg-gradient-to-br from-neutral-950 via-neutral-900 to-neutral-800 text-white\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div className=\"max-w-7xl mx-auto px-4 md:px-6 lg:px-8 py-8 md:py-10\"><!-- [et_pb_line_break_holder] -->        {\/* Header *\/}<!-- [et_pb_line_break_holder] -->        <\/p>\n<div className=\"flex flex-col md:flex-row md:items-center md:justify-between gap-4 mb-8\"><!-- [et_pb_line_break_holder] -->          <\/p>\n<div><!-- [et_pb_line_break_holder] -->            <\/p>\n<h1 className=\"text-2xl md:text-3xl font-extrabold tracking-tight text-white\"><!-- [et_pb_line_break_holder] -->              DASHBOARD DE CAMPA\u00d1AS META &#8211; GARANTY SEGUROS.<!-- [et_pb_line_break_holder] -->            <\/h1>\n<p><!-- [et_pb_line_break_holder] -->            <pee className=\"text-white text-sm md:text-base\"><!-- [et_pb_line_break_holder] -->              Carga un Excel y filtra por <span className=\"font-semibold\">Nombre de campa\u00f1a (A)<\/span>,<!-- [et_pb_line_break_holder] -->              <span className=\"font-semibold\"> Grupo de edad (B)<\/span> y <span className=\"font-semibold\">Sexo (C)<\/span>.<!-- [et_pb_line_break_holder] -->              Todo el dashboard se actualiza en tiempo real.<!-- [et_pb_line_break_holder] -->            <\/pee><!-- [et_pb_line_break_holder] -->          <\/div>\n<p><!-- [et_pb_line_break_holder] -->          <\/p>\n<div className=\"flex flex-wrap items-center gap-3\"><!-- [et_pb_line_break_holder] -->            <label className=\"inline-flex items-center gap-2 px-3 py-2 rounded-xl bg-[#747474] text-white hover:opacity-90 cursor-pointer\"><!-- [et_pb_line_break_holder] -->              <UploadCloud className=\"w-4 h-4\" \/><!-- [et_pb_line_break_holder] -->              <span className=\"text-sm\">{fileName || &#8220;Cargar Excel (.xlsx \/ .xls)&#8221;}<\/span><!-- [et_pb_line_break_holder] -->              <Input type=\"file\" accept=\".xlsx,.xls\" className=\"hidden\" onChange={handleFile} \/><!-- [et_pb_line_break_holder] -->            <\/label><!-- [et_pb_line_break_holder] -->            <Button variant=\"secondary\" className=\"bg-[#747474] text-white hover:opacity-90\" onClick={clearFilters}><!-- [et_pb_line_break_holder] -->              <Filter className=\"w-4 h-4 mr-2\" \/> Limpiar filtros<!-- [et_pb_line_break_holder] -->            <\/Button><!-- [et_pb_line_break_holder] -->            <Button variant=\"secondary\" className=\"bg-red-600 text-black hover:bg-red-500\" onClick={clearData}><!-- [et_pb_line_break_holder] -->              <Trash2 className=\"w-4 h-4 mr-2\" \/> Reiniciar<!-- [et_pb_line_break_holder] -->            <\/Button><!-- [et_pb_line_break_holder] -->            <Button variant=\"secondary\" className=\"bg-[#747474] text-white hover:opacity-90\" onClick={loadDemo}><!-- [et_pb_line_break_holder] -->              <Beaker className=\"w-4 h-4 mr-2\" \/> Cargar demo<!-- [et_pb_line_break_holder] -->            <\/Button><!-- [et_pb_line_break_holder] -->          <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->        {\/* Filters (Dropdowns) *\/}<!-- [et_pb_line_break_holder] -->        <\/p>\n<div className=\"grid grid-cols-1 md:grid-cols-3 gap-3 mb-6\"><!-- [et_pb_line_break_holder] -->          <FilterDropdown<!-- [et_pb_line_break_holder] -->            label={`Campa\u00f1a (A) ${filters.A.length ? `\u00b7 ${filters.A.length}` : &#8220;&#8221;}`}<!-- [et_pb_line_break_holder] -->            options={uniqueValues.A}<!-- [et_pb_line_break_holder] -->            selected={filters.A}<!-- [et_pb_line_break_holder] -->            onToggle={(v) => toggleFilter(&#8220;A&#8221;, v)}<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <FilterDropdown<!-- [et_pb_line_break_holder] -->            label={`Grupo de edad (B) ${filters.B.length ? `\u00b7 ${filters.B.length}` : &#8220;&#8221;}`}<!-- [et_pb_line_break_holder] -->            options={uniqueValues.B}<!-- [et_pb_line_break_holder] -->            selected={filters.B}<!-- [et_pb_line_break_holder] -->            onToggle={(v) => toggleFilter(&#8220;B&#8221;, v)}<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <FilterDropdown<!-- [et_pb_line_break_holder] -->            label={`Sexo (C) ${filters.C.length ? `\u00b7 ${filters.C.length}` : &#8220;&#8221;}`}<!-- [et_pb_line_break_holder] -->            options={uniqueValues.C}<!-- [et_pb_line_break_holder] -->            selected={filters.C}<!-- [et_pb_line_break_holder] -->            onToggle={(v) => toggleFilter(&#8220;C&#8221;, v)}<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->        {\/* Selected chips *\/}<!-- [et_pb_line_break_holder] -->        <\/p>\n<div className=\"flex flex-wrap gap-2 mb-6\"><!-- [et_pb_line_break_holder] -->          {filters.A.map((v) => (<!-- [et_pb_line_break_holder] -->            <Chip key={`A-${v}`} onRemove={() => toggleFilter(&#8220;A&#8221;, v)}><!-- [et_pb_line_break_holder] -->              A: {v}<!-- [et_pb_line_break_holder] -->            <\/Chip><!-- [et_pb_line_break_holder] -->          ))}<!-- [et_pb_line_break_holder] -->          {filters.B.map((v) => (<!-- [et_pb_line_break_holder] -->            <Chip key={`B-${v}`} onRemove={() => toggleFilter(&#8220;B&#8221;, v)}><!-- [et_pb_line_break_holder] -->              B: {v}<!-- [et_pb_line_break_holder] -->            <\/Chip><!-- [et_pb_line_break_holder] -->          ))}<!-- [et_pb_line_break_holder] -->          {filters.C.map((v) => (<!-- [et_pb_line_break_holder] -->            <Chip key={`C-${v}`} onRemove={() => toggleFilter(&#8220;C&#8221;, v)}><!-- [et_pb_line_break_holder] -->              C: {v}<!-- [et_pb_line_break_holder] -->            <\/Chip><!-- [et_pb_line_break_holder] -->          ))}<!-- [et_pb_line_break_holder] -->          {!filters.A.length &#038;&#038; !filters.B.length &#038;&#038; !filters.C.length &#038;&#038; (<!-- [et_pb_line_break_holder] -->            <span className=\"text-white\">Sin filtros activos<\/span><!-- [et_pb_line_break_holder] -->          )}<!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->        {\/* Metrics *\/}<!-- [et_pb_line_break_holder] -->        <\/p>\n<div className=\"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-8\"><!-- [et_pb_line_break_holder] -->          <Metric<!-- [et_pb_line_break_holder] -->            label=&#8221;Impresiones totales&#8221;<!-- [et_pb_line_break_holder] -->            value={formatNumber(metrics.impresiones)}<!-- [et_pb_line_break_holder] -->            hint=&#8221;\u03a3 G&#8221;<!-- [et_pb_line_break_holder] -->            tooltipTitle=&#8221;Suma de las impresiones (columna G) seg\u00fan los filtros.&#8221;<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <Metric<!-- [et_pb_line_break_holder] -->            label=&#8221;Inversi\u00f3n total&#8221;<!-- [et_pb_line_break_holder] -->            value={formatCurrency(metrics.inversion)}<!-- [et_pb_line_break_holder] -->            hint=&#8221;\u03a3 K&#8221;<!-- [et_pb_line_break_holder] -->            tooltipTitle=&#8221;Suma de la inversi\u00f3n (columna K) seg\u00fan los filtros.&#8221;<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <Metric<!-- [et_pb_line_break_holder] -->            label=&#8221;CTR %&#8221;<!-- [et_pb_line_break_holder] -->            value={formatPercent(metrics.ctr)}<!-- [et_pb_line_break_holder] -->            hint=&#8221;(\u03a3 N \/ \u03a3 G) \u00d7 100&#8243;<!-- [et_pb_line_break_holder] -->            tooltipTitle=&#8221;Porcentaje de clics en enlace sobre impresiones: (clics \u03a3N \/ impresiones \u03a3G) \u00d7 100.&#8221;<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <Metric<!-- [et_pb_line_break_holder] -->            label=&#8221;Resultados&#8221;<!-- [et_pb_line_break_holder] -->            value={formatNumber(metrics.resultados)}<!-- [et_pb_line_break_holder] -->            hint=&#8221;\u03a3 J&#8221;<!-- [et_pb_line_break_holder] -->            tooltipTitle=&#8221;Suma de resultados (columna J) seg\u00fan los filtros.&#8221;<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <Metric<!-- [et_pb_line_break_holder] -->            label=&#8221;Costo por resultado&#8221;<!-- [et_pb_line_break_holder] -->            value={formatCurrency(metrics.cpr)}<!-- [et_pb_line_break_holder] -->            hint=&#8221;\u03a3 K \/ \u03a3 J&#8221;<!-- [et_pb_line_break_holder] -->            tooltipTitle=&#8221;Inversi\u00f3n total \/ Resultados totales: (\u03a3K \/ \u03a3J).&#8221;<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <Metric<!-- [et_pb_line_break_holder] -->            label=&#8221;CPM&#8221;<!-- [et_pb_line_break_holder] -->            value={formatCurrency(metrics.cpm)}<!-- [et_pb_line_break_holder] -->            hint=&#8221;Promedio de L&#8221;<!-- [et_pb_line_break_holder] -->            tooltipTitle=&#8221;Costo por mil: promedio de CPM (columna L) en las filas filtradas.&#8221;<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->          <Metric<!-- [et_pb_line_break_holder] -->            label=&#8221;Efectividad oferta&#8221;<!-- [et_pb_line_break_holder] -->            value={formatPercent(metrics.efectividad)}<!-- [et_pb_line_break_holder] -->            hint=&#8221;(\u03a3 J \/ \u03a3 N) \u00d7 100&#8243;<!-- [et_pb_line_break_holder] -->            tooltipTitle=&#8221;Porcentaje de resultados sobre clics en enlace: (\u03a3J \/ \u03a3N) \u00d7 100.&#8221;<!-- [et_pb_line_break_holder] -->          \/><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->        {\/* Charts (4): Impresiones y Resultados por edad\/sexo *\/}<!-- [et_pb_line_break_holder] -->        <\/p>\n<div className=\"grid grid-cols-1 lg:grid-cols-2 gap-6 mb-10\"><!-- [et_pb_line_break_holder] -->          {\/* Impresiones por grupo de edad *\/}<!-- [et_pb_line_break_holder] -->          <Card className=\"backdrop-blur-xl bg-neutral-900\/60 border border-neutral-700\"><!-- [et_pb_line_break_holder] -->            <CardHeader><!-- [et_pb_line_break_holder] -->              <CardTitle className=\"text-sm text-white\">Impresiones por grupo de edad (B)<\/CardTitle><!-- [et_pb_line_break_holder] -->            <\/CardHeader><!-- [et_pb_line_break_holder] -->            <CardContent className=\"h-80\"><!-- [et_pb_line_break_holder] -->              <ResponsiveContainer width=\"100%\" height=\"100%\"><!-- [et_pb_line_break_holder] -->                <BarChart data={chartByAge}><!-- [et_pb_line_break_holder] -->                  <CartesianGrid strokeDasharray=\"3 3\" stroke=\"rgba(255,255,255,0.2)\" \/><!-- [et_pb_line_break_holder] -->                  <XAxis dataKey=\"name\" tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <YAxis tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <RTooltip<!-- [et_pb_line_break_holder] -->                    contentStyle={{ background: &#8220;#0a0a0a&#8221;, border: &#8220;1px solid #374151&#8221;, borderRadius: 12, color: &#8220;#ffffff&#8221; }}<!-- [et_pb_line_break_holder] -->                    formatter={(v: any) => formatCurrency(Number(v))}<!-- [et_pb_line_break_holder] -->                  \/><!-- [et_pb_line_break_holder] -->                  <Legend wrapperStyle={{ color: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <Bar dataKey=\"impresiones\" name=\"Impresiones\" radius={[8, 8, 0, 0]} fill=\"#FFFFFF\" \/><!-- [et_pb_line_break_holder] -->                <\/BarChart><!-- [et_pb_line_break_holder] -->              <\/ResponsiveContainer><!-- [et_pb_line_break_holder] -->            <\/CardContent><!-- [et_pb_line_break_holder] -->          <\/Card><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->          {\/* Impresiones por sexo *\/}<!-- [et_pb_line_break_holder] -->          <Card className=\"backdrop-blur-xl bg-neutral-900\/60 border border-neutral-700\"><!-- [et_pb_line_break_holder] -->            <CardHeader><!-- [et_pb_line_break_holder] -->              <CardTitle className=\"text-sm text-white\">Impresiones por sexo (C)<\/CardTitle><!-- [et_pb_line_break_holder] -->            <\/CardHeader><!-- [et_pb_line_break_holder] -->            <CardContent className=\"h-80\"><!-- [et_pb_line_break_holder] -->              <ResponsiveContainer width=\"100%\" height=\"100%\"><!-- [et_pb_line_break_holder] -->                <BarChart data={chartBySex}><!-- [et_pb_line_break_holder] -->                  <CartesianGrid strokeDasharray=\"3 3\" stroke=\"rgba(255,255,255,0.2)\" \/><!-- [et_pb_line_break_holder] -->                  <XAxis dataKey=\"name\" tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <YAxis tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <RTooltip<!-- [et_pb_line_break_holder] -->                    contentStyle={{ background: &#8220;#0a0a0a&#8221;, border: &#8220;1px solid #374151&#8221;, borderRadius: 12, color: &#8220;#ffffff&#8221; }}<!-- [et_pb_line_break_holder] -->                    formatter={(v: any) => formatCurrency(Number(v))}<!-- [et_pb_line_break_holder] -->                  \/><!-- [et_pb_line_break_holder] -->                  <Legend wrapperStyle={{ color: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <Bar dataKey=\"impresiones\" name=\"Impresiones\" radius={[8, 8, 0, 0]} fill=\"#FFFFFF\" \/><!-- [et_pb_line_break_holder] -->                <\/BarChart><!-- [et_pb_line_break_holder] -->              <\/ResponsiveContainer><!-- [et_pb_line_break_holder] -->            <\/CardContent><!-- [et_pb_line_break_holder] -->          <\/Card><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->          {\/* Resultados por grupo de edad *\/}<!-- [et_pb_line_break_holder] -->          <Card className=\"backdrop-blur-xl bg-neutral-900\/60 border border-neutral-700\"><!-- [et_pb_line_break_holder] -->            <CardHeader><!-- [et_pb_line_break_holder] -->              <CardTitle className=\"text-sm text-white\">Resultados por grupo de edad (B)<\/CardTitle><!-- [et_pb_line_break_holder] -->            <\/CardHeader><!-- [et_pb_line_break_holder] -->            <CardContent className=\"h-80\"><!-- [et_pb_line_break_holder] -->              <ResponsiveContainer width=\"100%\" height=\"100%\"><!-- [et_pb_line_break_holder] -->                <LineChart data={chartByAge}><!-- [et_pb_line_break_holder] -->                  <CartesianGrid strokeDasharray=\"3 3\" stroke=\"rgba(255,255,255,0.2)\" \/><!-- [et_pb_line_break_holder] -->                  <XAxis dataKey=\"name\" tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <YAxis tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <RTooltip<!-- [et_pb_line_break_holder] -->                    contentStyle={{ background: &#8220;#0a0a0a&#8221;, border: &#8220;1px solid #374151&#8221;, borderRadius: 12, color: &#8220;#ffffff&#8221; }}<!-- [et_pb_line_break_holder] -->                    formatter={(v: any) => formatNumber(Number(v))}<!-- [et_pb_line_break_holder] -->                  \/><!-- [et_pb_line_break_holder] -->                  <Legend wrapperStyle={{ color: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <Line type=\"monotone\" dataKey=\"resultados\" name=\"Resultados\" stroke=\"#FFFFFF\" strokeWidth={3} dot={{ r: 4, fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                <\/LineChart><!-- [et_pb_line_break_holder] -->              <\/ResponsiveContainer><!-- [et_pb_line_break_holder] -->            <\/CardContent><!-- [et_pb_line_break_holder] -->          <\/Card><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->          {\/* Resultados por sexo *\/}<!-- [et_pb_line_break_holder] -->          <Card className=\"backdrop-blur-xl bg-neutral-900\/60 border border-neutral-700\"><!-- [et_pb_line_break_holder] -->            <CardHeader><!-- [et_pb_line_break_holder] -->              <CardTitle className=\"text-sm text-white\">Resultados por sexo (C)<\/CardTitle><!-- [et_pb_line_break_holder] -->            <\/CardHeader><!-- [et_pb_line_break_holder] -->            <CardContent className=\"h-80\"><!-- [et_pb_line_break_holder] -->              <ResponsiveContainer width=\"100%\" height=\"100%\"><!-- [et_pb_line_break_holder] -->                <LineChart data={chartBySex}><!-- [et_pb_line_break_holder] -->                  <CartesianGrid strokeDasharray=\"3 3\" stroke=\"rgba(255,255,255,0.2)\" \/><!-- [et_pb_line_break_holder] -->                  <XAxis dataKey=\"name\" tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <YAxis tick={{ fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <RTooltip<!-- [et_pb_line_break_holder] -->                    contentStyle={{ background: &#8220;#0a0a0a&#8221;, border: &#8220;1px solid #374151&#8221;, borderRadius: 12, color: &#8220;#ffffff&#8221; }}<!-- [et_pb_line_break_holder] -->                    formatter={(v: any) => formatNumber(Number(v))}<!-- [et_pb_line_break_holder] -->                  \/><!-- [et_pb_line_break_holder] -->                  <Legend wrapperStyle={{ color: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                  <Line type=\"monotone\" dataKey=\"resultados\" name=\"Resultados\" stroke=\"#FFFFFF\" strokeWidth={3} dot={{ r: 4, fill: \"#ffffff\" }} \/><!-- [et_pb_line_break_holder] -->                <\/LineChart><!-- [et_pb_line_break_holder] -->              <\/ResponsiveContainer><!-- [et_pb_line_break_holder] -->            <\/CardContent><!-- [et_pb_line_break_holder] -->          <\/Card><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->        {\/* Table (agregada por campa\u00f1a) *\/}<!-- [et_pb_line_break_holder] -->        <Card className=\"backdrop-blur-xl bg-neutral-900\/60 border border-neutral-700\"><!-- [et_pb_line_break_holder] -->          <CardHeader><!-- [et_pb_line_break_holder] -->            <CardTitle className=\"text-sm text-white\">Campa\u00f1as (orden alfab\u00e9tico por nombre)<\/CardTitle><!-- [et_pb_line_break_holder] -->          <\/CardHeader><!-- [et_pb_line_break_holder] -->          <CardContent className=\"overflow-auto\"><!-- [et_pb_line_break_holder] -->            <\/p>\n<table className=\"min-w-full text-left text-sm text-white\"><!-- [et_pb_line_break_holder] -->              <\/p>\n<thead className=\"sticky top-0 bg-neutral-900\/80 backdrop-blur\"><!-- [et_pb_line_break_holder] -->                <\/p>\n<tr><!-- [et_pb_line_break_holder] -->                  <\/p>\n<th className=\"py-3 px-4\">Campa\u00f1a (A)<\/th>\n<p><!-- [et_pb_line_break_holder] -->                  <\/p>\n<th className=\"py-3 px-4\">Impresiones (G)<\/th>\n<p><!-- [et_pb_line_break_holder] -->                  <\/p>\n<th className=\"py-3 px-4\">Inversi\u00f3n (K)<\/th>\n<p><!-- [et_pb_line_break_holder] -->                  <\/p>\n<th className=\"py-3 px-4\">Resultados (J)<\/th>\n<p><!-- [et_pb_line_break_holder] -->                  <\/p>\n<th className=\"py-3 px-4\">CTR %<\/th>\n<p><!-- [et_pb_line_break_holder] -->                  <\/p>\n<th className=\"py-3 px-4\">CPM<\/th>\n<p><!-- [et_pb_line_break_holder] -->                  <\/p>\n<th className=\"py-3 px-4\">Costo\/Resultado<\/th>\n<p><!-- [et_pb_line_break_holder] -->                <\/tr>\n<p><!-- [et_pb_line_break_holder] -->              <\/thead>\n<p><!-- [et_pb_line_break_holder] -->              <\/p>\n<tbody><!-- [et_pb_line_break_holder] -->                {tableData.length ? (<!-- [et_pb_line_break_holder] -->                  tableData.map((r, idx) => (<!-- [et_pb_line_break_holder] -->                    <\/p>\n<tr key={idx} className=\"border-t border-neutral-800 hover:bg-neutral-800\/60\"><!-- [et_pb_line_break_holder] -->                      <\/p>\n<td className=\"py-2 px-4\">{r.campa\u00f1a}<\/td>\n<p><!-- [et_pb_line_break_holder] -->                      <\/p>\n<td className=\"py-2 px-4\">{formatNumber(r.impresiones)}<\/td>\n<p><!-- [et_pb_line_break_holder] -->                      <\/p>\n<td className=\"py-2 px-4\">{formatCurrency(r.inversion)}<\/td>\n<p><!-- [et_pb_line_break_holder] -->                      <\/p>\n<td className=\"py-2 px-4\">{formatNumber(r.resultados)}<\/td>\n<p><!-- [et_pb_line_break_holder] -->                      <\/p>\n<td className=\"py-2 px-4\">{formatPercent(r.ctr)}<\/td>\n<p><!-- [et_pb_line_break_holder] -->                      <\/p>\n<td className=\"py-2 px-4\">{formatCurrency(r.cpm)}<\/td>\n<p><!-- [et_pb_line_break_holder] -->                      <\/p>\n<td className=\"py-2 px-4\">{formatCurrency(r.cpr)}<\/td>\n<p><!-- [et_pb_line_break_holder] -->                    <\/tr>\n<p><!-- [et_pb_line_break_holder] -->                  ))<!-- [et_pb_line_break_holder] -->                ) : (<!-- [et_pb_line_break_holder] -->                  <\/p>\n<tr><!-- [et_pb_line_break_holder] -->                    <\/p>\n<td className=\"py-6 px-4 text-white\/90\" colSpan={7}><!-- [et_pb_line_break_holder] -->                      Carga un Excel para visualizar la tabla o usa <em>Cargar demo<\/em>.<!-- [et_pb_line_break_holder] -->                    <\/td>\n<p><!-- [et_pb_line_break_holder] -->                  <\/tr>\n<p><!-- [et_pb_line_break_holder] -->                )}<!-- [et_pb_line_break_holder] -->              <\/tbody>\n<p><!-- [et_pb_line_break_holder] -->            <\/table>\n<p><!-- [et_pb_line_break_holder] -->          <\/CardContent><!-- [et_pb_line_break_holder] -->        <\/Card><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->        {\/* Footer note *\/}<!-- [et_pb_line_break_holder] -->        <\/p>\n<div className=\"mt-8 text-xs text-white\"><!-- [et_pb_line_break_holder] -->          <pee><!-- [et_pb_line_break_holder] -->            Notas: Este dashboard calcula todas las m\u00e9tricas usando \u00fanicamente las filas filtradas. Columnas usadas: <strong>A<\/strong> (Campa\u00f1a),<!-- [et_pb_line_break_holder] -->            <strong> B<\/strong> (Grupo de edad), <strong>C<\/strong> (Sexo), <strong>G<\/strong> (Impresiones), <strong>J<\/strong> (Resultados), <strong>K<\/strong> (Inversi\u00f3n), <strong>L<\/strong> (CPM),<!-- [et_pb_line_break_holder] -->            <strong> N<\/strong> (Clics en enlace). Se incluyen protecciones contra divisi\u00f3n por cero.<!-- [et_pb_line_break_holder] -->          <\/pee><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->  );<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->[\/et_pb_code][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u2014 MARKETING DIGITAL CON RESULTADOS \u00bfNecesitas m\u00e1s clientes potenciales? Dise\u00f1amos estrategias digitales 360\u00b0 que transforman tu inversi\u00f3n publicitaria en clientes prospecto calificados y ventas reales para tu empresa QUIERO MAS LEADS Si te identificas con alguna de estas situaciones \u00bfQuieres pautar en Redes sociales o Google y no sabes c\u00f3mo hacerlo? \u00bfTus campa\u00f1as digitales no [&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":"","om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"_links":{"self":[{"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/pages\/666"}],"collection":[{"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/comments?post=666"}],"version-history":[{"count":108,"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/pages\/666\/revisions"}],"predecessor-version":[{"id":921,"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/pages\/666\/revisions\/921"}],"wp:attachment":[{"href":"https:\/\/simdigital.co\/index.php\/wp-json\/wp\/v2\/media?parent=666"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}