{"id":1416,"date":"2026-04-01T04:22:43","date_gmt":"2026-04-01T04:22:43","guid":{"rendered":"https:\/\/playmarketing.ca\/?page_id=1416"},"modified":"2026-04-01T04:22:43","modified_gmt":"2026-04-01T04:22:43","slug":"calculadora","status":"publish","type":"page","link":"https:\/\/playmarketing.ca\/en\/calculadora\/","title":{"rendered":"Calculadora"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"es\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Diagn\u00f3stico Estrat\u00e9gico &#8211; Play Marketing<\/title>\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@400;500;600;700&#038;display=swap\" rel=\"stylesheet\">\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/html2pdf.js\/0.10.1\/html2pdf.bundle.min.js\"><\/script>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n        }\n\n        body {\n            font-family: 'Poppins', sans-serif;\n            background: linear-gradient(135deg, #1B5E3F 0%, #2a7a52 100%);\n            min-height: 100vh;\n            padding: 20px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .container {\n            background: white;\n            border-radius: 16px;\n            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);\n            max-width: 750px;\n            width: 100%;\n            overflow: hidden;\n        }\n\n        .header {\n            background: linear-gradient(135deg, #1B5E3F 0%, #2a7a52 100%);\n            color: white;\n            padding: 50px 40px;\n            text-align: center;\n        }\n\n        .logo {\n            font-size: 24px;\n            font-weight: 700;\n            margin-bottom: 15px;\n            letter-spacing: 1px;\n        }\n\n        .logo-accent {\n            color: #CCFF00;\n        }\n\n        .header h1 {\n            font-size: 32px;\n            margin-bottom: 15px;\n            font-weight: 700;\n        }\n\n        .header p {\n            font-size: 16px;\n            opacity: 0.95;\n            margin-bottom: 20px;\n        }\n\n        .progress-bar {\n            width: 100%;\n            height: 6px;\n            background: rgba(255, 255, 255, 0.2);\n            border-radius: 10px;\n            overflow: hidden;\n            margin-top: 20px;\n        }\n\n        .progress-fill {\n            height: 100%;\n            background: #CCFF00;\n            width: 0%;\n            transition: width 0.3s ease;\n        }\n\n        .content {\n            padding: 45px 40px;\n            min-height: 400px;\n        }\n\n        .question-container {\n            display: none;\n        }\n\n        .question-container.active {\n            display: block;\n            animation: fadeIn 0.3s ease;\n        }\n\n        @keyframes fadeIn {\n            from {\n                opacity: 0;\n                transform: translateY(10px);\n            }\n            to {\n                opacity: 1;\n                transform: translateY(0);\n            }\n        }\n\n        .question-number {\n            color: #1B5E3F;\n            font-size: 13px;\n            font-weight: 700;\n            margin-bottom: 10px;\n            text-transform: uppercase;\n            letter-spacing: 1px;\n        }\n\n        .question-title {\n            color: #1B5E3F;\n            font-size: 22px;\n            font-weight: 700;\n            margin-bottom: 25px;\n            line-height: 1.3;\n        }\n\n        .options-group {\n            display: flex;\n            flex-direction: column;\n            gap: 12px;\n        }\n\n        .option-item {\n            display: flex;\n            align-items: center;\n            padding: 16px 20px;\n            border: 2px solid #e0e0e0;\n            border-radius: 8px;\n            cursor: pointer;\n            transition: all 0.3s;\n            background: #fafafa;\n        }\n\n        .option-item:hover {\n            border-color: #1B5E3F;\n            background: #f0f9f5;\n        }\n\n        .option-item input[type=\"radio\"] {\n            margin-right: 15px;\n            width: 18px;\n            height: 18px;\n            cursor: pointer;\n            accent-color: #1B5E3F;\n        }\n\n        .option-item.selected {\n            border-color: #1B5E3F;\n            background: #f0f9f5;\n        }\n\n        .option-label {\n            cursor: pointer;\n            flex: 1;\n            color: #333;\n            font-weight: 500;\n        }\n\n        .input-group {\n            display: flex;\n            flex-direction: column;\n            gap: 12px;\n        }\n\n        input[type=\"number\"],\n        input[type=\"text\"],\n        input[type=\"email\"],\n        input[type=\"tel\"] {\n            padding: 12px 15px;\n            border: 2px solid #e0e0e0;\n            border-radius: 8px;\n            font-size: 14px;\n            font-family: 'Poppins', sans-serif;\n            transition: all 0.3s;\n        }\n\n        input[type=\"number\"]:focus,\n        input[type=\"text\"]:focus,\n        input[type=\"email\"]:focus,\n        input[type=\"tel\"]:focus {\n            outline: none;\n            border-color: #1B5E3F;\n            box-shadow: 0 0 0 3px rgba(27, 94, 63, 0.1);\n        }\n\n        .button-group {\n            display: flex;\n            gap: 12px;\n            margin-top: 30px;\n            justify-content: space-between;\n        }\n\n        button {\n            padding: 14px 28px;\n            border: none;\n            border-radius: 8px;\n            font-size: 15px;\n            font-weight: 700;\n            cursor: pointer;\n            transition: all 0.3s;\n            font-family: 'Poppins', sans-serif;\n            text-transform: uppercase;\n            letter-spacing: 0.5px;\n        }\n\n        .btn-next {\n            background: #CCFF00;\n            color: #1B5E3F;\n            flex: 1;\n            box-shadow: 0 4px 15px rgba(204, 255, 0, 0.2);\n        }\n\n        .btn-next:hover:not(:disabled) {\n            transform: translateY(-2px);\n            box-shadow: 0 8px 25px rgba(204, 255, 0, 0.3);\n        }\n\n        .btn-next:disabled {\n            opacity: 0.5;\n            cursor: not-allowed;\n        }\n\n        .btn-prev {\n            background: #e0e0e0;\n            color: #333;\n            flex: 1;\n        }\n\n        .btn-prev:hover {\n            background: #d0d0d0;\n        }\n\n        .results-container {\n            display: none;\n            animation: fadeIn 0.5s ease;\n        }\n\n        .results-container.active {\n            display: block;\n        }\n\n        .result-header {\n            text-align: center;\n            margin-bottom: 40px;\n            padding-bottom: 30px;\n            border-bottom: 2px dashed #CCFF00;\n        }\n\n        .result-header h2 {\n            color: #1B5E3F;\n            font-size: 28px;\n            margin-bottom: 15px;\n        }\n\n        .score-badge {\n            display: inline-block;\n            padding: 15px 30px;\n            border-radius: 50px;\n            font-size: 16px;\n            font-weight: 700;\n            margin: 15px 0;\n        }\n\n        .score-critical {\n            background: #ffebee;\n            color: #c62828;\n            border: 2px solid #c62828;\n        }\n\n        .score-warning {\n            background: #fff3e0;\n            color: #e65100;\n            border: 2px solid #e65100;\n        }\n\n        .score-good {\n            background: #e8f5e9;\n            color: #2e7d32;\n            border: 2px solid #2e7d32;\n        }\n\n        .recommendations-section {\n            background: #f0f9f5;\n            padding: 25px;\n            border-radius: 8px;\n            margin-bottom: 30px;\n            border-left: 4px solid #CCFF00;\n        }\n\n        .recommendations-section h3 {\n            color: #1B5E3F;\n            font-size: 18px;\n            font-weight: 700;\n            margin-bottom: 20px;\n        }\n\n        .service-recommendation {\n            background: white;\n            padding: 20px;\n            border-radius: 8px;\n            margin-bottom: 15px;\n            border-left: 4px solid #CCFF00;\n        }\n\n        .service-recommendation h4 {\n            color: #1B5E3F;\n            font-size: 16px;\n            font-weight: 700;\n            margin-bottom: 10px;\n        }\n\n        .service-recommendation p {\n            color: #666;\n            font-size: 14px;\n            line-height: 1.6;\n            margin-bottom: 10px;\n        }\n\n        .service-details {\n            display: grid;\n            grid-template-columns: 1fr 1fr;\n            gap: 10px;\n            margin-top: 12px;\n            padding-top: 12px;\n            border-top: 1px solid #e0e0e0;\n        }\n\n        .detail-item {\n            font-size: 13px;\n            color: #333;\n        }\n\n        .detail-label {\n            font-weight: 600;\n            color: #1B5E3F;\n        }\n\n        .priority-high {\n            border-left-color: #d32f2f;\n            background: #ffebee;\n        }\n\n        .priority-medium {\n            border-left-color: #f57c00;\n            background: #fff3e0;\n        }\n\n        .contact-form {\n            background: #f0f9f5;\n            padding: 25px;\n            border-radius: 8px;\n            margin-top: 30px;\n        }\n\n        .contact-form h3 {\n            color: #1B5E3F;\n            font-size: 16px;\n            font-weight: 700;\n            margin-bottom: 20px;\n        }\n\n        .form-row {\n            display: grid;\n            grid-template-columns: 1fr 1fr;\n            gap: 15px;\n            margin-bottom: 15px;\n        }\n\n        .form-row.full {\n            grid-template-columns: 1fr;\n        }\n\n        .button-group-results {\n            display: flex;\n            gap: 12px;\n            margin-top: 20px;\n        }\n\n        .btn-download {\n            background: #1B5E3F;\n            color: white;\n            flex: 1;\n            box-shadow: 0 4px 15px rgba(27, 94, 63, 0.2);\n        }\n\n        .btn-download:hover {\n            transform: translateY(-2px);\n            box-shadow: 0 8px 25px rgba(27, 94, 63, 0.3);\n        }\n\n        .btn-contact {\n            background: #CCFF00;\n            color: #1B5E3F;\n            flex: 1;\n            box-shadow: 0 4px 15px rgba(204, 255, 0, 0.2);\n        }\n\n        .btn-contact:hover {\n            transform: translateY(-2px);\n            box-shadow: 0 8px 25px rgba(204, 255, 0, 0.3);\n        }\n\n        .btn-restart {\n            background: #e0e0e0;\n            color: #333;\n            width: 100%;\n            margin-top: 10px;\n        }\n\n        .btn-restart:hover {\n            background: #d0d0d0;\n        }\n\n        @media (max-width: 600px) {\n            .header {\n                padding: 35px 25px;\n            }\n\n            .header h1 {\n                font-size: 24px;\n            }\n\n            .content {\n                padding: 30px 25px;\n            }\n\n            .question-title {\n                font-size: 18px;\n            }\n\n            .form-row {\n                grid-template-columns: 1fr;\n            }\n\n            .button-group {\n                flex-direction: column;\n            }\n\n            .button-group-results {\n                flex-direction: column;\n            }\n\n            .service-details {\n                grid-template-columns: 1fr;\n            }\n        }\n\n        .summary-box {\n            background: #fff3cd;\n            padding: 20px;\n            border-radius: 8px;\n            margin-bottom: 20px;\n            border-left: 4px solid #ffc107;\n        }\n\n        .summary-box h3 {\n            color: #856404;\n            font-size: 16px;\n            font-weight: 700;\n            margin-bottom: 10px;\n        }\n\n        .summary-box p {\n            color: #333;\n            font-size: 14px;\n            line-height: 1.6;\n        }\n    <\/style>\n<\/head>\n<body>\n    <div class=\"container\">\n        <div class=\"header\">\n            <div class=\"logo\">PLAY <span class=\"logo-accent\">\u2192<\/span><\/div>\n            <h1>Diagn\u00f3stico Estrat\u00e9gico<\/h1>\n            <p>Descubre exactamente qu\u00e9 necesita tu negocio para crecer<\/p>\n            <div class=\"progress-bar\">\n                <div class=\"progress-fill\" id=\"progressFill\"><\/div>\n            <\/div>\n        <\/div>\n\n        <div class=\"content\">\n            <!-- QUIZ CONTAINER -->\n            <div id=\"quizContainer\">\n                <!-- Q1: Informaci\u00f3n B\u00e1sica -->\n                <div class=\"question-container active\" data-step=\"0\">\n                    <div class=\"question-number\">Pregunta 1 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCu\u00e1l es tu nombre y email?<\/div>\n                    <div class=\"input-group\">\n                        <input type=\"text\" id=\"nombre\" placeholder=\"Tu nombre completo\">\n                        <input type=\"email\" id=\"email\" placeholder=\"tu@email.com\">\n                        <input type=\"tel\" id=\"telefono\" placeholder=\"Tu WhatsApp\">\n                    <\/div>\n                <\/div>\n\n                <!-- Q2: Google Business -->\n                <div class=\"question-container\" data-step=\"1\">\n                    <div class=\"question-number\">Pregunta 2 de 10<\/div>\n                    <div class=\"question-title\">\u00bfTienes un Google Business Profile optimizado?<\/div>\n                    <div class=\"options-group\" id=\"options_gbp\"><\/div>\n                <\/div>\n\n                <!-- Q3: Contenido -->\n                <div class=\"question-container\" data-step=\"2\">\n                    <div class=\"question-number\">Pregunta 3 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCada cu\u00e1nto subes contenido a tus redes?<\/div>\n                    <div class=\"options-group\" id=\"options_contenido\"><\/div>\n                <\/div>\n\n                <!-- Q4: Inversi\u00f3n -->\n                <div class=\"question-container\" data-step=\"3\">\n                    <div class=\"question-number\">Pregunta 4 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCu\u00e1nto inviertes mensualmente en marketing?<\/div>\n                    <div class=\"options-group\" id=\"options_inversion\"><\/div>\n                <\/div>\n\n                <!-- Q5: Website -->\n                <div class=\"question-container\" data-step=\"4\">\n                    <div class=\"question-number\">Pregunta 5 de 10<\/div>\n                    <div class=\"question-title\">\u00bfTienes un sitio web?<\/div>\n                    <div class=\"options-group\" id=\"options_web\"><\/div>\n                <\/div>\n\n                <!-- Q6: Conversi\u00f3n Web -->\n                <div class=\"question-container\" data-step=\"5\">\n                    <div class=\"question-number\">Pregunta 6 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCu\u00e1ntos clientes consigues mensualmente desde tu web?<\/div>\n                    <div class=\"options-group\" id=\"options_convweb\"><\/div>\n                <\/div>\n\n                <!-- Q7: Ingresos -->\n                <div class=\"question-container\" data-step=\"6\">\n                    <div class=\"question-number\">Pregunta 7 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCu\u00e1l es tu ingreso mensual promedio?<\/div>\n                    <div class=\"input-group\">\n                        <input type=\"number\" id=\"ingresos\" placeholder=\"Ej: 5000\" min=\"0\" step=\"100\">\n                    <\/div>\n                <\/div>\n\n                <!-- Q8: Desaf\u00edo -->\n                <div class=\"question-container\" data-step=\"7\">\n                    <div class=\"question-number\">Pregunta 8 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCu\u00e1l es tu mayor desaf\u00edo ahora?<\/div>\n                    <div class=\"options-group\" id=\"options_desafio\"><\/div>\n                <\/div>\n\n                <!-- Q9: Tipo de Negocio -->\n                <div class=\"question-container\" data-step=\"8\">\n                    <div class=\"question-number\">Pregunta 9 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCu\u00e1l es tu tipo de negocio?<\/div>\n                    <div class=\"options-group\" id=\"options_negocio\"><\/div>\n                <\/div>\n\n                <!-- Q10: Objetivo -->\n                <div class=\"question-container\" data-step=\"9\">\n                    <div class=\"question-number\">Pregunta 10 de 10<\/div>\n                    <div class=\"question-title\">\u00bfCu\u00e1l es tu objetivo principal en los pr\u00f3ximos 3 meses?<\/div>\n                    <div class=\"options-group\" id=\"options_objetivo\"><\/div>\n                <\/div>\n            <\/div>\n\n            <!-- RESULTS SECTION -->\n            <div class=\"results-container\" id=\"resultsContainer\">\n                <div class=\"result-header\">\n                    <h2>Tu Diagn\u00f3stico Personalizado<\/h2>\n                    <div id=\"scoreDisplay\"><\/div>\n                <\/div>\n\n                <div class=\"summary-box\">\n                    <h3>\ud83d\udcca Resumen de tu Situaci\u00f3n<\/h3>\n                    <p id=\"summaryText\"><\/p>\n                <\/div>\n\n                <div class=\"recommendations-section\">\n                    <h3>\ud83c\udfaf Servicios Recomendados para Ti<\/h3>\n                    <div id=\"recommendationsContainer\"><\/div>\n                <\/div>\n\n                <div class=\"contact-form\">\n                    <h3>Recibe tu reporte completo<\/h3>\n                    <div class=\"form-row\">\n                        <input type=\"text\" id=\"contactName\" placeholder=\"Nombre completo\">\n                        <input type=\"email\" id=\"contactEmail\" placeholder=\"Email\">\n                    <\/div>\n                    <div class=\"form-row full\">\n                        <input type=\"tel\" id=\"contactPhone\" placeholder=\"WhatsApp\">\n                    <\/div>\n                <\/div>\n\n                <div class=\"button-group-results\">\n                    <button class=\"btn-download\" onclick=\"generatePDF()\">\ud83d\udce5 Descargar Reporte PDF<\/button>\n                    <button class=\"btn-contact\" onclick=\"sendToWhatsApp()\">\ud83d\udcac Enviar por WhatsApp<\/button>\n                <\/div>\n                <button class=\"btn-restart\" onclick=\"restartQuiz()\">\u2190 Hacer de Nuevo<\/button>\n            <\/div>\n\n            <!-- NAVIGATION -->\n            <div class=\"button-group\" id=\"navigationButtons\">\n                <button class=\"btn-prev\" onclick=\"previousQuestion()\" style=\"display: none;\" id=\"btnPrev\">\u2190 Anterior<\/button>\n                <button class=\"btn-next\" onclick=\"nextQuestion()\" id=\"btnNext\">Siguiente \u2192<\/button>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <script>\n        \/\/ DEFINICI\u00d3N CLARA DE PREGUNTAS\n        const questions = {\n            gbp: {\n                name: 'Google Business Profile',\n                options: [\n                    { value: 'no', label: 'No tengo' },\n                    { value: 'basico', label: 'Tengo pero est\u00e1 incompleto' },\n                    { value: 'bueno', label: 'Est\u00e1 bien pero podr\u00eda mejorar' },\n                    { value: 'excelente', label: 'Est\u00e1 optimizado' }\n                ]\n            },\n            contenido: {\n                name: 'Frecuencia de Contenido',\n                options: [\n                    { value: 'nunca', label: 'Casi nunca o nunca' },\n                    { value: 'ocasional', label: 'Ocasionalmente (1-2 veces\/mes)' },\n                    { value: 'semanal', label: 'Semanalmente (1-3 veces\/semana)' },\n                    { value: 'diario', label: 'Diariamente o casi diariamente' }\n                ]\n            },\n            inversion: {\n                name: 'Inversi\u00f3n en Marketing',\n                options: [\n                    { value: '0', label: 'Nada, lo hago yo mismo' },\n                    { value: '100-500', label: '$100 - $500' },\n                    { value: '500-1000', label: '$500 - $1,000' },\n                    { value: '1000+', label: '$1,000+' }\n                ]\n            },\n            web: {\n                name: 'Sitio Web',\n                options: [\n                    { value: 'no', label: 'No tengo' },\n                    { value: 'basico', label: 'Tengo pero es muy b\u00e1sico' },\n                    { value: 'bueno', label: 'Tengo y se ve bien' },\n                    { value: 'excelente', label: 'Tengo y convierte bien' }\n                ]\n            },\n            convweb: {\n                name: 'Conversi\u00f3n Web',\n                options: [\n                    { value: '0', label: 'Ninguno o muy pocos' },\n                    { value: '1-5', label: '1-5 clientes\/mes' },\n                    { value: '5-10', label: '5-10 clientes\/mes' },\n                    { value: '10+', label: '10+ clientes\/mes' }\n                ]\n            },\n            desafio: {\n                name: 'Mayor Desaf\u00edo',\n                options: [\n                    { value: 'visibilidad', label: 'Falta de visibilidad online' },\n                    { value: 'contenido', label: 'No s\u00e9 qu\u00e9 contenido crear' },\n                    { value: 'conversion', label: 'Tengo tr\u00e1fico pero no convierte' },\n                    { value: 'tiempo', label: 'Falta de tiempo para marketing' },\n                    { value: 'automatizacion', label: 'Necesito automatizar procesos' }\n                ]\n            },\n            negocio: {\n                name: 'Tipo de Negocio',\n                options: [\n                    { value: 'servicios', label: 'Servicios profesionales' },\n                    { value: 'ecommerce', label: 'E-commerce \/ Tienda online' },\n                    { value: 'coaching', label: 'Coaching \/ Consultor\u00eda' },\n                    { value: 'salon', label: 'Sal\u00f3n \/ Est\u00e9tica \/ Spa' },\n                    { value: 'restaurante', label: 'Restaurante \/ Comida' },\n                    { value: 'otro', label: 'Otro' }\n                ]\n            },\n            objetivo: {\n                name: 'Objetivo Principal',\n                options: [\n                    { value: 'visibilidad', label: 'Aumentar visibilidad y presencia' },\n                    { value: 'leads', label: 'Generar m\u00e1s leads\/consultas' },\n                    { value: 'ventas', label: 'Aumentar ventas directas' },\n                    { value: 'automatizacion', label: 'Automatizar y ahorrar tiempo' }\n                ]\n            }\n        };\n\n        \/\/ RENDERIZAR OPCIONES\n        function renderOptions() {\n            const questionKeys = ['gbp', 'contenido', 'inversion', 'web', 'convweb', 'desafio', 'negocio', 'objetivo'];\n            \n            questionKeys.forEach(key => {\n                const containerId = `options_${key}`;\n                const container = document.getElementById(containerId);\n                if (!container) return;\n\n                container.innerHTML = '';\n                questions[key].options.forEach(opt => {\n                    const div = document.createElement('div');\n                    div.className = 'option-item';\n                    div.innerHTML = `\n                        <input type=\"radio\" name=\"${key}\" value=\"${opt.value}\" id=\"opt_${key}_${opt.value}\">\n                        <label for=\"opt_${key}_${opt.value}\" class=\"option-label\">${opt.label}<\/label>\n                    `;\n                    div.addEventListener('click', () => {\n                        document.getElementById(`opt_${key}_${opt.value}`).checked = true;\n                        container.querySelectorAll('.option-item').forEach(item => item.classList.remove('selected'));\n                        div.classList.add('selected');\n                    });\n                    container.appendChild(div);\n                });\n            });\n        }\n\n        let currentStep = 0;\n        const totalSteps = 10;\n\n        function updateProgress() {\n            const progress = ((currentStep + 1) \/ totalSteps) * 100;\n            document.getElementById('progressFill').style.width = progress + '%';\n        }\n\n        function showQuestion(step) {\n            document.querySelectorAll('.question-container').forEach(q => q.classList.remove('active'));\n            document.querySelector(`[data-step=\"${step}\"]`).classList.add('active');\n\n            const btnPrev = document.getElementById('btnPrev');\n            const btnNext = document.getElementById('btnNext');\n\n            btnPrev.style.display = step === 0 ? 'none' : 'block';\n            btnNext.textContent = step === totalSteps - 1 ? 'Ver Resultados \u2192' : 'Siguiente \u2192';\n\n            updateProgress();\n        }\n\n        function validateCurrentStep() {\n            if (currentStep === 0) {\n                const nombre = document.getElementById('nombre').value.trim();\n                const email = document.getElementById('email').value.trim();\n                return nombre !== '' && email !== '';\n            } else if (currentStep === 6) {\n                return document.getElementById('ingresos').value !== '' && document.getElementById('ingresos').value > 0;\n            } else {\n                \/\/ Mapeo correcto: currentStep -> question key\n                \/\/ Step 1 -> gbp, Step 2 -> contenido, Step 3 -> inversion, Step 4 -> web, \n                \/\/ Step 5 -> convweb, Step 7 -> desafio, Step 8 -> negocio, Step 9 -> objetivo\n                const stepToKeyMap = {\n                    1: 'gbp',\n                    2: 'contenido',\n                    3: 'inversion',\n                    4: 'web',\n                    5: 'convweb',\n                    7: 'desafio',\n                    8: 'negocio',\n                    9: 'objetivo'\n                };\n                const key = stepToKeyMap[currentStep];\n                if (!key) return false;\n                return document.querySelector(`input[name=\"${key}\"]:checked`) !== null;\n            }\n        }\n\n        function nextQuestion() {\n            if (!validateCurrentStep()) {\n                alert('Por favor completa esta pregunta antes de continuar');\n                return;\n            }\n\n            if (currentStep === totalSteps - 1) {\n                showResults();\n                return;\n            }\n\n            currentStep++;\n            showQuestion(currentStep);\n        }\n\n        function previousQuestion() {\n            if (currentStep > 0) {\n                currentStep--;\n                showQuestion(currentStep);\n            }\n        }\n\n        function getAnswers() {\n            return {\n                nombre: document.getElementById('nombre').value,\n                email: document.getElementById('email').value,\n                telefono: document.getElementById('telefono').value,\n                gbp: document.querySelector('input[name=\"gbp\"]:checked')?.value || '',\n                contenido: document.querySelector('input[name=\"contenido\"]:checked')?.value || '',\n                inversion: document.querySelector('input[name=\"inversion\"]:checked')?.value || '',\n                web: document.querySelector('input[name=\"web\"]:checked')?.value || '',\n                convweb: document.querySelector('input[name=\"convweb\"]:checked')?.value || '',\n                ingresos: document.getElementById('ingresos').value || '0',\n                desafio: document.querySelector('input[name=\"desafio\"]:checked')?.value || '',\n                negocio: document.querySelector('input[name=\"negocio\"]:checked')?.value || '',\n                objetivo: document.querySelector('input[name=\"objetivo\"]:checked')?.value || ''\n            };\n        }\n\n        function calculateScore(answers) {\n            let score = 0;\n\n            if (answers.gbp === 'no' || answers.gbp === 'basico') score += 30;\n            else if (answers.gbp === 'bueno') score += 15;\n\n            if (answers.contenido === 'nunca' || answers.contenido === 'ocasional') score += 25;\n            else if (answers.contenido === 'semanal') score += 10;\n\n            if (answers.inversion === '0') score += 20;\n            else if (answers.inversion === '100-500') score += 10;\n\n            if (answers.web === 'no' || answers.web === 'basico') score += 35;\n            else if (answers.web === 'bueno') score += 15;\n\n            if (answers.convweb === '0' || answers.convweb === '1-5') score += 25;\n            else if (answers.convweb === '5-10') score += 10;\n\n            return Math.min(score, 100);\n        }\n\n        function getRecommendations(answers) {\n            const recommendations = [];\n\n            if (answers.web === 'no' || answers.web === 'basico') {\n                recommendations.push({\n                    service: 'Website Funcional',\n                    priority: 'high',\n                    description: 'Tu negocio necesita un sitio web profesional que convierte visitantes en clientes. No solo bonito, sino funcional.',\n                    benefit: 'Aumenta conversi\u00f3n 3-5x',\n                    investment: '$1,500 - $2,500',\n                    roi: 'Recupera inversi\u00f3n en 2-3 meses'\n                });\n            }\n\n            if (answers.contenido === 'nunca' || answers.contenido === 'ocasional') {\n                recommendations.push({\n                    service: 'Coaching de Contenido',\n                    priority: 'high',\n                    description: 'Te ayudamos a crear contenido que vende. T\u00fa grabas, nosotros editamos, publicamos y te motivamos.',\n                    benefit: 'Aumenta visibilidad y confianza',\n                    investment: '$800 - $2,000\/mes',\n                    roi: 'Genera 5-10 leads\/mes'\n                });\n            }\n\n            if (answers.gbp === 'no' || answers.gbp === 'basico') {\n                recommendations.push({\n                    service: 'Optimizaci\u00f3n Google Business',\n                    priority: 'high',\n                    description: 'Optimizamos tu perfil de Google para que aparezcas en b\u00fasquedas locales y recibas m\u00e1s llamadas de clientes.',\n                    benefit: 'Aparece en primera p\u00e1gina',\n                    investment: '$297 - $500',\n                    roi: 'Genera 10-20 b\u00fasquedas\/mes'\n                });\n            }\n\n            if (answers.convweb === '0' || answers.convweb === '1-5' || answers.desafio === 'automatizacion') {\n                recommendations.push({\n                    service: 'Automatizaciones',\n                    priority: 'medium',\n                    description: 'Sistemas que trabajan 24\/7 por ti: WhatsApp autom\u00e1tico, email secuencial, Google Business actualizado.',\n                    benefit: 'Ahorra 10+ horas\/semana',\n                    investment: '$1,200 - $3,500\/mes',\n                    roi: 'Genera leads mientras duermes'\n                });\n            }\n\n            if (recommendations.length === 0) {\n                recommendations.push({\n                    service: 'Auditor\u00eda Estrat\u00e9gica Completa',\n                    priority: 'medium',\n                    description: 'Revisamos tu estrategia completa y te mostramos oportunidades de crecimiento.',\n                    benefit: 'Plan personalizado',\n                    investment: '$297',\n                    roi: 'Identifica oportunidades de $10k+'\n                });\n            }\n\n            return recommendations;\n        }\n\n        function showResults() {\n            const answers = getAnswers();\n            const score = calculateScore(answers);\n            const recommendations = getRecommendations(answers);\n\n            let scoreClass = 'score-critical';\n            let scoreText = 'CR\u00cdTICO - Necesitas actuar ahora';\n            if (score < 40) {\n                scoreClass = 'score-critical';\n                scoreText = 'CR\u00cdTICO - Necesitas actuar ahora';\n            } else if (score < 70) {\n                scoreClass = 'score-warning';\n                scoreText = 'NECESITA MEJORA - Hay oportunidades importantes';\n            } else {\n                scoreClass = 'score-good';\n                scoreText = 'BIEN - Pero a\u00fan hay potencial';\n            }\n\n            document.getElementById('scoreDisplay').innerHTML = `<div class=\"score-badge ${scoreClass}\">${scoreText}<\/div>`;\n\n            const summaryText = `Tu negocio est\u00e1 generando $${answers.ingresos}\/mes, pero hay oportunidades importantes de crecimiento. \n            Basado en tu situaci\u00f3n actual (${answers.negocio}), necesitas enfocarte en: ${recommendations.map(r => r.service.toLowerCase()).join(', ')}.`;\n            document.getElementById('summaryText').textContent = summaryText;\n\n            let recommendationsHTML = '';\n            recommendations.forEach((rec, index) => {\n                const priorityClass = rec.priority === 'high' ? 'priority-high' : 'priority-medium';\n                recommendationsHTML += `\n                    <div class=\"service-recommendation ${priorityClass}\">\n                        <h4>${index + 1}. ${rec.service}<\/h4>\n                        <p>${rec.description}<\/p>\n                        <div class=\"service-details\">\n                            <div class=\"detail-item\"><span class=\"detail-label\">Beneficio:<\/span> ${rec.benefit}<\/div>\n                            <div class=\"detail-item\"><span class=\"detail-label\">Inversi\u00f3n:<\/span> ${rec.investment}<\/div>\n                            <div class=\"detail-item\"><span class=\"detail-label\">ROI:<\/span> ${rec.roi}<\/div>\n                        <\/div>\n                    <\/div>\n                `;\n            });\n            document.getElementById('recommendationsContainer').innerHTML = recommendationsHTML;\n\n            document.getElementById('contactName').value = answers.nombre;\n            document.getElementById('contactEmail').value = answers.email;\n            document.getElementById('contactPhone').value = answers.telefono;\n\n            window.reportData = { answers, score, scoreText, recommendations };\n\n            document.getElementById('quizContainer').style.display = 'none';\n            document.getElementById('navigationButtons').style.display = 'none';\n            document.getElementById('resultsContainer').classList.add('active');\n        }\n\n        function generatePDF() {\n            const nombre = document.getElementById('contactName').value;\n            const email = document.getElementById('contactEmail').value;\n            if (!nombre || !email) {\n                alert('Por favor completa nombre y email');\n                return;\n            }\n\n            const data = window.reportData;\n            const fecha = new Date().toLocaleDateString('es-ES');\n\n            let recommendationsHTML = '';\n            data.recommendations.forEach((rec, index) => {\n                recommendationsHTML += `\n                    <div style=\"margin-bottom: 20px; padding: 15px; background: #f0f9f5; border-left: 4px solid #CCFF00; border-radius: 6px;\">\n                        <h4 style=\"color: #1B5E3F; margin-bottom: 10px; font-size: 16px;\">${index + 1}. ${rec.service}<\/h4>\n                        <p style=\"color: #333; margin-bottom: 10px; font-size: 14px;\">${rec.description}<\/p>\n                        <table style=\"width: 100%; font-size: 13px;\">\n                            <tr><td style=\"padding: 5px 0;\"><strong>Beneficio:<\/strong> ${rec.benefit}<\/td><\/tr>\n                            <tr><td style=\"padding: 5px 0;\"><strong>Inversi\u00f3n:<\/strong> ${rec.investment}<\/td><\/tr>\n                            <tr><td style=\"padding: 5px 0;\"><strong>ROI:<\/strong> ${rec.roi}<\/td><\/tr>\n                        <\/table>\n                    <\/div>\n                `;\n            });\n\n            const element = document.createElement('div');\n            element.innerHTML = `\n                <div style=\"font-family: Arial, sans-serif; max-width: 800px; margin: 0 auto;\">\n                    <div style=\"text-align: center; margin-bottom: 40px; padding-bottom: 20px; border-bottom: 3px solid #1B5E3F;\">\n                        <div style=\"font-size: 24px; font-weight: bold; color: #1B5E3F; margin-bottom: 10px;\">PLAY \u2192 Marketing<\/div>\n                        <div style=\"font-size: 28px; font-weight: bold; color: #1B5E3F; margin-bottom: 10px;\">Reporte de Diagn\u00f3stico Estrat\u00e9gico<\/div>\n                        <div style=\"color: #999; font-size: 12px;\">Generado: ${fecha}<\/div>\n                    <\/div>\n\n                    <div style=\"margin-bottom: 30px;\">\n                        <h3 style=\"color: #1B5E3F; border-bottom: 2px dashed #CCFF00; padding-bottom: 10px;\">Informaci\u00f3n del Cliente<\/h3>\n                        <p><strong>Nombre:<\/strong> ${data.answers.nombre}<\/p>\n                        <p><strong>Email:<\/strong> ${data.answers.email}<\/p>\n                        <p><strong>Tel\u00e9fono:<\/strong> ${data.answers.telefono || 'N\/A'}<\/p>\n                        <p><strong>Tipo de Negocio:<\/strong> ${data.answers.negocio}<\/p>\n                        <p><strong>Ingresos Mensuales:<\/strong> $${data.answers.ingresos}<\/p>\n                    <\/div>\n\n                    <div style=\"margin-bottom: 30px; background: #f0f9f5; padding: 20px; border-radius: 8px; border-left: 4px solid #CCFF00;\">\n                        <div style=\"text-align: center;\">\n                            <div style=\"font-size: 12px; color: #666; text-transform: uppercase; letter-spacing: 1px;\">Estado Actual de tu Negocio<\/div>\n                            <div style=\"font-size: 32px; font-weight: bold; color: #1B5E3F; margin: 15px 0;\">${data.scoreText}<\/div>\n                        <\/div>\n                    <\/div>\n\n                    <div style=\"margin-bottom: 30px;\">\n                        <h3 style=\"color: #1B5E3F; border-bottom: 2px dashed #CCFF00; padding-bottom: 10px;\">Servicios Recomendados para Ti<\/h3>\n                        ${recommendationsHTML}\n                    <\/div>\n\n                    <div style=\"text-align: center; padding: 20px; background: #f0f9f5; border-radius: 8px;\">\n                        <p style=\"margin-bottom: 10px;\"><strong>\u00bfListo para llevar tu negocio al siguiente nivel?<\/strong><\/p>\n                        <p style=\"color: #666; font-size: 12px;\">Cont\u00e1ctanos para una consultor\u00eda personalizada sin costo<\/p>\n                        <p style=\"color: #1B5E3F; font-weight: bold; margin-top: 10px;\">\ud83d\udce7 contacto@playmarketing.ca | \ud83d\udcf1 +1 (289) 253-7507<\/p>\n                    <\/div>\n                <\/div>\n            `;\n\n            const opt = {\n                margin: 10,\n                filename: `Diagnostico_${nombre.replace(\/\\s\/g, '_')}_${fecha.replace(\/\\\/\/g, '-')}.pdf`,\n                image: { type: 'jpeg', quality: 0.98 },\n                html2canvas: { scale: 2 },\n                jsPDF: { orientation: 'portrait', unit: 'mm', format: 'a4' }\n            };\n\n            html2pdf().set(opt).from(element).save();\n        }\n\n        function sendToWhatsApp() {\n            const nombre = document.getElementById('contactName').value;\n            const email = document.getElementById('contactEmail').value;\n            const telefono = document.getElementById('contactPhone').value;\n            const data = window.reportData;\n\n            if (!nombre || !email || !telefono) {\n                alert('Por favor completa todos los campos de contacto');\n                return;\n            }\n\n            const servicios = data.recommendations.map((r, i) => `${i + 1}. ${r.service}`).join('\\n');\n\n            const mensaje = `\n*\ud83d\udcca Tu Diagn\u00f3stico Estrat\u00e9gico - Play Marketing*\n\nHola ${nombre},\n\nHe completado tu diagn\u00f3stico. Aqu\u00ed est\u00e1n tus resultados:\n\n*${data.scoreText}*\n\n*\ud83c\udfaf Servicios Recomendados:*\n${servicios}\n\n\u00bfHablamos sobre c\u00f3mo llevar tu negocio al siguiente nivel?\n            `;\n\n            const whatsappLink = `https:\/\/wa.me\/12892537507?text=${encodeURIComponent(mensaje)}`;\n            window.open(whatsappLink, '_blank');\n        }\n\n        function restartQuiz() {\n            currentStep = 0;\n            document.getElementById('quizContainer').style.display = 'block';\n            document.getElementById('navigationButtons').style.display = 'flex';\n            document.getElementById('resultsContainer').classList.remove('active');\n            document.querySelectorAll('input[type=\"text\"], input[type=\"email\"], input[type=\"tel\"], input[type=\"number\"]').forEach(el => el.value = '');\n            document.querySelectorAll('input[type=\"radio\"]').forEach(el => el.checked = false);\n            document.querySelectorAll('.option-item').forEach(el => el.classList.remove('selected'));\n            showQuestion(0);\n        }\n\n        \/\/ INICIALIZAR\n        renderOptions();\n        showQuestion(0);\n    <\/script>\n<\/body>\n<\/html>\n\n","protected":false},"excerpt":{"rendered":"<p>Diagn\u00f3stico Estrat\u00e9gico &#8211; Play Marketing PLAY \u2192 Diagn\u00f3stico Estrat\u00e9gico Descubre exactamente qu\u00e9 necesita tu negocio para crecer Pregunta 1 de 10 \u00bfCu\u00e1l es tu nombre y email? Pregunta 2 de 10 \u00bfTienes un Google Business Profile optimizado? Pregunta 3 de 10 \u00bfCada cu\u00e1nto subes contenido a tus redes? Pregunta 4 de 10 \u00bfCu\u00e1nto inviertes mensualmente [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_gspb_post_css":"","_crdt_document":"","pagelayer_contact_templates":[],"_pagelayer_content":"","footnotes":""},"class_list":["post-1416","page","type-page","status-publish","hentry"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/pages\/1416","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/comments?post=1416"}],"version-history":[{"count":2,"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/pages\/1416\/revisions"}],"predecessor-version":[{"id":1418,"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/pages\/1416\/revisions\/1418"}],"wp:attachment":[{"href":"https:\/\/playmarketing.ca\/en\/wp-json\/wp\/v2\/media?parent=1416"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}