{"id":3330,"date":"2026-09-26T16:13:38","date_gmt":"2026-09-26T22:13:38","guid":{"rendered":"https:\/\/cedic.cem.org.mx\/?page_id=3330"},"modified":"2026-09-28T15:36:49","modified_gmt":"2026-09-28T21:36:49","slug":"monitoreo-de-libertad-religiosa-en-mexico","status":"publish","type":"page","link":"https:\/\/cedic.cem.org.mx\/?page_id=3330","title":{"rendered":"Monitoreo de Libertad Religiosa en M\u00e9xico"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3330\" class=\"elementor elementor-3330\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d576c47 e-flex e-con-boxed e-con e-parent\" data-id=\"d576c47\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d234e21 elementor-widget elementor-widget-html\" data-id=\"d234e21\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"es\" class=\"h-full bg-slate-50\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Movilidad Religiosa en M\u00e9xico<\/title>\n\n    <!-- Tailwind CSS CDN -->\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    <script>\n        tailwind.config = {\n            theme: {\n                extend: {\n                    colors: {\n                        brand: {\n                            50: '#f4f6fb',\n                            100: '#e7ecf6',\n                            500: '#006837',\n                            700: '#004d28',\n                            900: '#00331b',\n                        },\n                        accent: {\n                            500: '#d97706',\n                            600: '#b45309',\n                        }\n                    }\n                }\n            }\n        }\n    <\/script>\n\n    <!-- Chart.js CDN -->\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\n\n    <style>\n        .chart-container {\n            position: relative;\n            width: 100%;\n            max-width: 650px;\n            margin-left: auto;\n            margin-right: auto;\n            height: 320px;\n            max-height: 400px;\n        }\n        @media (min-width: 768px) {\n            .chart-container {\n                height: 360px;\n            }\n        }\n        .custom-scrollbar::-webkit-scrollbar {\n            width: 6px;\n            height: 6px;\n        }\n        .custom-scrollbar::-webkit-scrollbar-track {\n            background: #f1f5f9;\n        }\n        .custom-scrollbar::-webkit-scrollbar-thumb {\n            background: #cbd5e1;\n            border-radius: 4px;\n        }\n        .custom-scrollbar::-webkit-scrollbar-thumb:hover {\n            background: #94a3b8;\n        }\n    <\/style>\n<\/head>\n<body class=\"h-full text-slate-800 antialiased flex flex-col font-sans\">\n\n    <!-- Chosen Palette: Slate Warm Neutral & Deep Green (#006837) with Warm Amber Accents and Pale Green Header Box -->\n    <!-- Application Structure Plan:\n         Designed as an interactive dashboard structured in 4 primary modules for optimal exploration:\n         1. Panorama General (KPI Metrics & National Religious Distribution Visualizations)\n         2. Explorador Estatal Interactivo (Filterable State Map\/Grid, Credo Diversity Index, and SEGOB AR Registry count)\n         3. Matriz de Vulnerabilidades (Categorized risk analysis: Crime\/Violence vs Usos y Costumbres)\n         4. Marco Normativo y Registro (Legal background & search tool for minority confessions)\n         This structure translates complex demographic and human rights data into an accessible, non-linear experience focused on religious mobility and transitions.\n    -->\n    <!-- Visualization & Content Choices:\n         - National Distribution -> Donut Chart (Chart.js Canvas) -> Visual breakdown of Catholicism, Evangelicalism, Secular\/Unaffiliated, and Minorities.\n         - Minority Denominations -> Horizontal Bar Chart (Chart.js Canvas) -> Compare relative population of 15+ minority expressions without clutter.\n         - State Comparison -> Grouped Bar Chart (Chart.js Canvas) -> Compare top catholic vs evangelical vs secular states.\n         - Interactive Table\/Cards -> HTML + JS filtering -> Allows deep-dive per State with instant updates.\n         - CONFIRMATION: NO SVG graphics used. NO Mermaid JS used.\n    -->\n    <!-- CONFIRMATION: NO SVG graphics used. NO Mermaid JS used. -->\n\n    <!-- Header Section -->\n    <header class=\"bg-slate-900 text-white border-b border-slate-800 sticky top-0 z-50\">\n        <div class=\"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4\">\n            <div class=\"flex flex-col md:flex-row md:items-center md:justify-between gap-4\">\n                \n                <!-- Title Box with pale green background and high-contrast dark green text -->\n                <div class=\"flex items-center space-x-3 bg-emerald-100 text-emerald-950 p-3.5 rounded-xl shadow-md border border-emerald-300\">\n                    <div class=\"bg-[#006837] text-white p-2.5 rounded-lg font-black text-xl tracking-wider shadow\">\n                        MRM\n                    <\/div>\n                    <div>\n                        <h1 class=\"text-xl sm:text-2xl font-black tracking-tight text-emerald-950\">Movilidad Religiosa en M\u00e9xico<\/h1>\n                        <p class=\"text-xs sm:text-sm text-emerald-800 font-semibold\">Plataforma de Monitoreo Demogr\u00e1fico, Transici\u00f3n de Credos y Pluralismo Religioso<\/p>\n                    <\/div>\n                <\/div>\n                \n                <!-- Quick Navigation Tabs -->\n                <nav class=\"flex space-x-1 sm:space-x-2 bg-slate-800 p-1 rounded-xl text-xs sm:text-sm font-medium overflow-x-auto custom-scrollbar\">\n                    <button onclick=\"switchTab('national')\" id=\"tab-national\" class=\"nav-tab px-3 py-1.5 rounded-lg transition-all text-white bg-[#006837] shadow\">\n                        Panorama Nacional\n                    <\/button>\n                    <button onclick=\"switchTab('states')\" id=\"tab-states\" class=\"nav-tab px-3 py-1.5 rounded-lg transition-all text-slate-300 hover:text-white hover:bg-slate-700\">\n                        Explorador Estatal\n                    <\/button>\n                    <button onclick=\"switchTab('vulnerabilities')\" id=\"tab-vulnerabilities\" class=\"nav-tab px-3 py-1.5 rounded-lg transition-all text-slate-300 hover:text-white hover:bg-slate-700\">\n                        Matriz de Riesgos\n                    <\/button>\n                    <button onclick=\"switchTab('legal')\" id=\"tab-legal\" class=\"nav-tab px-3 py-1.5 rounded-lg transition-all text-slate-300 hover:text-white hover:bg-slate-700\">\n                        Marco Jur\u00eddico\n                    <\/button>\n                <\/nav>\n            <\/div>\n        <\/div>\n    <\/header>\n\n    <!-- Main Content Container -->\n    <main class=\"flex-1 max-w-7xl w-full mx-auto px-4 sm:px-6 lg:px-8 py-6 space-y-8\">\n\n        <!-- Top Summary Cards -->\n        <section class=\"grid grid-cols-2 md:grid-cols-4 gap-4\">\n            <div class=\"bg-white p-4 rounded-xl shadow-sm border border-slate-200\">\n                <span class=\"text-xs font-semibold uppercase tracking-wider text-slate-500\">Poblaci\u00f3n Total (2020)<\/span>\n                <div class=\"text-2xl sm:text-3xl font-extrabold text-slate-900 mt-1\">126.01M<\/div>\n                <p class=\"text-xs text-slate-500 mt-1\">Habitantes censados (INEGI)<\/p>\n            <\/div>\n            <div class=\"bg-white p-4 rounded-xl shadow-sm border border-slate-200\">\n                <span class=\"text-xs font-semibold uppercase tracking-wider text-indigo-600\">Poblaci\u00f3n Cat\u00f3lica<\/span>\n                <div class=\"text-2xl sm:text-3xl font-extrabold text-indigo-700 mt-1\">77.7%<\/div>\n                <p class=\"text-xs text-slate-500 mt-1\">97,864,218 de adscritos<\/p>\n            <\/div>\n            <div class=\"bg-white p-4 rounded-xl shadow-sm border border-slate-200\">\n                <span class=\"text-xs font-semibold uppercase tracking-wider text-amber-600\">Protestante \/ Evang\u00e9lica<\/span>\n                <div class=\"text-2xl sm:text-3xl font-extrabold text-amber-700 mt-1\">11.2%<\/div>\n                <p class=\"text-xs text-slate-500 mt-1\">14,095,307 de adscritos<\/p>\n            <\/div>\n            <div class=\"bg-white p-4 rounded-xl shadow-sm border border-slate-200\">\n                <span class=\"text-xs font-semibold uppercase tracking-wider text-emerald-700\">Asociaciones Religiosas<\/span>\n                <div class=\"text-2xl sm:text-3xl font-extrabold text-emerald-800 mt-1\">10,651+<\/div>\n                <p class=\"text-xs text-slate-500 mt-1\">Registradas ante SEGOB<\/p>\n            <\/div>\n        <\/section>\n\n        <!-- TAB 1: PANORAMA NACIONAL -->\n        <section id=\"view-national\" class=\"tab-content space-y-6\">\n            <div class=\"bg-white p-6 rounded-2xl shadow-sm border border-slate-200\">\n                <h2 class=\"text-xl font-bold text-slate-900 mb-2\">Panorama Demogr\u00e1fico Nacional y Movilidad de Credos<\/h2>\n                <p class=\"text-slate-600 text-sm leading-relaxed mb-6\">\n                    Esta secci\u00f3n analiza la composici\u00f3n sociorreligiosa de M\u00e9xico y la din\u00e1mica de movilidad entre adscripciones a partir de los datos del Censo de Poblaci\u00f3n y Vivienda (INEGI 2020). Permite comprender la diversificaci\u00f3n religiosa, la paulatina redistribuci\u00f3n de la adscripci\u00f3n cat\u00f3lica hist\u00f3rica, el crecimiento de comunidades evang\u00e9licas y el aumento significativo del sector secularizado.\n                <\/p>\n\n                <div class=\"grid grid-cols-1 lg:grid-cols-2 gap-8 items-center\">\n                    <!-- Chart 1 Container -->\n                    <div class=\"flex flex-col items-center\">\n                        <h3 class=\"text-sm font-bold text-slate-700 uppercase tracking-wider mb-3 text-center\">Distribuci\u00f3n General de Adscripci\u00f3n Religiosa<\/h3>\n                        <div class=\"chart-container\">\n                            <canvas id=\"chartNationalDist\"><\/canvas>\n                        <\/div>\n                        <p class=\"text-xs text-slate-500 mt-2 text-center\">Fuente: Censo de Poblaci\u00f3n y Vivienda 2020, INEGI.<\/p>\n                    <\/div>\n\n                    <!-- Breakdown Table -->\n                    <div class=\"space-y-4\">\n                        <h3 class=\"text-sm font-bold text-slate-700 uppercase tracking-wider\">Desglose por Grandes Grupos Censales<\/h3>\n                        <div class=\"overflow-x-auto rounded-xl border border-slate-200\">\n                            <table class=\"w-full text-left text-sm text-slate-700\">\n                                <thead class=\"bg-slate-100 text-xs text-slate-600 uppercase\">\n                                    <tr>\n                                        <th class=\"px-4 py-2.5 font-bold\">Grupo Censal<\/th>\n                                        <th class=\"px-4 py-2.5 font-bold text-right\">Poblaci\u00f3n<\/th>\n                                        <th class=\"px-4 py-2.5 font-bold text-right\">% Total<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody class=\"divide-y divide-slate-200 bg-white\">\n                                    <tr class=\"hover:bg-slate-50\">\n                                        <td class=\"px-4 py-2.5 font-medium text-indigo-900\">Cat\u00f3lica<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-mono\">97,864,218<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-bold text-indigo-700\">77.7%<\/td>\n                                    <\/tr>\n                                    <tr class=\"hover:bg-slate-50\">\n                                        <td class=\"px-4 py-2.5 font-medium text-amber-900\">Protestante \/ Cristiana Evang\u00e9lica<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-mono\">14,095,307<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-bold text-amber-700\">11.2%<\/td>\n                                    <\/tr>\n                                    <tr class=\"hover:bg-slate-50\">\n                                        <td class=\"px-4 py-2.5 font-medium text-slate-800\">Sin Religi\u00f3n (Ateos \/ Agn\u00f3sticos)<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-mono\">10,211,052<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-bold text-slate-700\">8.1%<\/td>\n                                    <\/tr>\n                                    <tr class=\"hover:bg-slate-50\">\n                                        <td class=\"px-4 py-2.5 font-medium text-sky-800\">Creyentes sin Adscripci\u00f3n Religiosa<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-mono\">3,103,464<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-bold text-sky-700\">2.5%<\/td>\n                                    <\/tr>\n                                    <tr class=\"hover:bg-slate-50\">\n                                        <td class=\"px-4 py-2.5 font-medium text-emerald-800\">Otras Religiones \/ Credos Minoritarios<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-mono\">248,169<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-bold text-emerald-700\">0.2%<\/td>\n                                    <\/tr>\n                                    <tr class=\"hover:bg-slate-50\">\n                                        <td class=\"px-4 py-2.5 font-medium text-slate-500\">No Especificado<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-mono\">491,814<\/td>\n                                        <td class=\"px-4 py-2.5 text-right font-bold text-slate-500\">0.4%<\/td>\n                                    <\/tr>\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <!-- Minorities Breakdown Section -->\n            <div class=\"bg-white p-6 rounded-2xl shadow-sm border border-slate-200\">\n                <h3 class=\"text-lg font-bold text-slate-900 mb-2\">Cuerpos Religiosos y Expresiones Minoritarias en M\u00e9xico<\/h3>\n                <p class=\"text-slate-600 text-sm leading-relaxed mb-6\">\n                    Mapeo anal\u00edtico de la presencia cuantitativa de denominaciones espec\u00edficas y expresiones religiosas alternativas. Interact\u00fae con el gr\u00e1fico y el buscador para examinar la diversidad interna del cristianismo no cat\u00f3lico y otras tradiciones religiosas hist\u00f3ricas o contempor\u00e1neas.\n                <\/p>\n\n                <div class=\"grid grid-cols-1 lg:grid-cols-2 gap-8\">\n                    <!-- Chart 2 Container -->\n                    <div>\n                        <h4 class=\"text-xs font-bold text-slate-500 uppercase tracking-wider mb-3\">Denominaciones Minoritarias (N\u00famero de Creyentes)<\/h4>\n                        <div class=\"chart-container\">\n                            <canvas id=\"chartMinorities\"><\/canvas>\n                        <\/div>\n                    <\/div>\n\n                    <!-- Searchable List -->\n                    <div class=\"flex flex-col space-y-3\">\n                        <div class=\"flex items-center justify-between\">\n                            <h4 class=\"text-xs font-bold text-slate-500 uppercase tracking-wider\">Listado Completo de Grupos Registrados<\/h4>\n                            <input type=\"text\" id=\"searchMinority\" onkeyup=\"filterMinorities()\" placeholder=\"Buscar denominaci\u00f3n...\" class=\"text-xs border border-slate-300 rounded-lg px-3 py-1.5 focus:outline-none focus:ring-2 focus:ring-[#006837] w-48\">\n                        <\/div>\n                        <div class=\"border border-slate-200 rounded-xl overflow-y-auto max-h-72 custom-scrollbar divide-y divide-slate-100\" id=\"minorityList\">\n                            <!-- JS populates this -->\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/section>\n\n        <!-- TAB 2: EXPLORADOR ESTATAL INTERACTIVO -->\n        <section id=\"view-states\" class=\"tab-content hidden space-y-6\">\n            <div class=\"bg-white p-6 rounded-2xl shadow-sm border border-slate-200\">\n                <div class=\"flex flex-col md:flex-row md:items-center justify-between gap-4 mb-4\">\n                    <div>\n                        <h2 class=\"text-xl font-bold text-slate-900\">Explorador Estatal de Movilidad e Indicadores por Entidad<\/h2>\n                        <p class=\"text-slate-600 text-sm mt-1\">\n                            An\u00e1lisis comparativo de las 32 entidades federativas en cuanto a porcentaje de adscripci\u00f3n, diversidad de credos presentes y cantidad de Asociaciones Religiosas (A.R.) registradas ante la Secretar\u00eda de Gobernaci\u00f3n (SEGOB).\n                        <\/p>\n                    <\/div>\n                    <div class=\"flex items-center space-x-2\">\n                        <label for=\"stateSelector\" class=\"text-xs font-bold text-slate-600 uppercase whitespace-nowrap\">Ver Entidad:<\/label>\n                        <select id=\"stateSelector\" onchange=\"highlightState()\" class=\"border border-slate-300 bg-white rounded-lg text-sm px-3 py-2 font-semibold text-slate-700 focus:ring-2 focus:ring-[#006837] focus:outline-none shadow-sm\">\n                            <option value=\"ALL\">Todas las entidades (Comparativa)<\/option>\n                            <!-- JS populates state options -->\n                        <\/select>\n                    <\/div>\n                <\/div>\n\n                <!-- Comparison Chart Container -->\n                <div class=\"mb-8\">\n                    <h3 class=\"text-xs font-bold text-slate-500 uppercase tracking-wider mb-2\">Comparativa de Adscripci\u00f3n por Entidad Federativa (%)<\/h3>\n                    <div class=\"chart-container\" style=\"max-width: 100%; height: 380px;\">\n                        <canvas id=\"chartStateComparison\"><\/canvas>\n                    <\/div>\n                <\/div>\n\n                <!-- State Detail Card \/ Filtered Table -->\n                <div id=\"stateDetailBox\" class=\"hidden bg-emerald-50 border border-emerald-200 rounded-xl p-5 mb-6\">\n                    <div class=\"flex flex-col sm:flex-row sm:items-center justify-between gap-4\">\n                        <div>\n                            <span class=\"text-xs font-extrabold uppercase text-[#006837] tracking-wider\">Ficha T\u00e9cnica de Entidad<\/span>\n                            <h3 id=\"detailStateName\" class=\"text-2xl font-black text-slate-900\">---<\/h3>\n                        <\/div>\n                        <div class=\"flex flex-wrap gap-3\">\n                            <div class=\"bg-white px-3 py-2 rounded-lg border border-emerald-100 text-center shadow-sm\">\n                                <span class=\"text-xs text-slate-500 block\">Credos Estimados<\/span>\n                                <span id=\"detailCredos\" class=\"text-lg font-bold text-slate-800\">0<\/span>\n                            <\/div>\n                            <div class=\"bg-white px-3 py-2 rounded-lg border border-emerald-100 text-center shadow-sm\">\n                                <span class=\"text-xs text-slate-500 block\">A.R. Registradas (SEGOB)<\/span>\n                                <span id=\"detailAR\" class=\"text-lg font-bold text-[#006837]\">0<\/span>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                    <div class=\"grid grid-cols-1 sm:grid-cols-3 gap-4 mt-4 pt-4 border-t border-emerald-200\/60 text-sm\">\n                        <div>\n                            <span class=\"text-slate-600 block text-xs\">Poblaci\u00f3n Cat\u00f3lica:<\/span>\n                            <strong id=\"detailCatholic\" class=\"text-indigo-900 text-base\">0%<\/strong>\n                        <\/div>\n                        <div>\n                            <span class=\"text-slate-600 block text-xs\">Protestante \/ Evang\u00e9lica:<\/span>\n                            <strong id=\"detailEvangelical\" class=\"text-amber-800 text-base\">0%<\/strong>\n                        <\/div>\n                        <div>\n                            <span class=\"text-slate-600 block text-xs\">Sin Religi\u00f3n \/ Creyente No Afiliado:<\/span>\n                            <strong id=\"detailSecular\" class=\"text-slate-800 text-base\">0%<\/strong>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Full Data Table -->\n                <div class=\"overflow-x-auto rounded-xl border border-slate-200 custom-scrollbar\">\n                    <table class=\"w-full text-left text-sm text-slate-700\">\n                        <thead class=\"bg-slate-100 text-xs text-slate-600 uppercase\">\n                            <tr>\n                                <th class=\"px-4 py-3 font-bold\">Entidad Federativa<\/th>\n                                <th class=\"px-4 py-3 font-bold text-right\">% Cat\u00f3lica<\/th>\n                                <th class=\"px-4 py-3 font-bold text-right\">% Protestante \/ Evang\u00e9lica<\/th>\n                                <th class=\"px-4 py-3 font-bold text-right\">% Sin Religi\u00f3n \/ No Afiliado<\/th>\n                                <th class=\"px-4 py-3 font-bold text-center\">Credos Presentes<\/th>\n                                <th class=\"px-4 py-3 font-bold text-right\">A.R. Registradas (SEGOB)<\/th>\n                            <\/tr>\n                        <\/thead>\n                        <tbody id=\"stateTableBody\" class=\"divide-y divide-slate-200 bg-white\">\n                            <!-- JS populates table rows -->\n                        <\/tbody>\n                    <\/table>\n                <\/div>\n            <\/div>\n        <\/section>\n\n        <!-- TAB 3: MATRIZ DE VULNERABILIDADES -->\n        <section id=\"view-vulnerabilities\" class=\"tab-content hidden space-y-6\">\n            <div class=\"bg-white p-6 rounded-2xl shadow-sm border border-slate-200\">\n                <h2 class=\"text-xl font-bold text-slate-900 mb-2\">Matriz de Vulnerabilidades e Incidentes en la Movilidad Religiosa<\/h2>\n                <p class=\"text-slate-600 text-sm leading-relaxed mb-6\">\n                    El ejercicio de la libertad de culto y los procesos de conversi\u00f3n o transici\u00f3n de credo enfrentan presiones estructurales diferenciadas por regi\u00f3n. Esta matriz clasifica las principales amenazas identificadas por organismos internacionales y monitoreos locales.\n                <\/p>\n\n                <div class=\"grid grid-cols-1 md:grid-cols-2 gap-6 mb-8\">\n                    <!-- Threat Category 1 -->\n                    <div class=\"bg-amber-50\/60 border border-amber-200 rounded-xl p-5 space-y-3\">\n                        <div class=\"flex items-center space-x-2\">\n                            <span class=\"bg-amber-600 text-white text-xs font-bold px-2.5 py-1 rounded-md\">Categor\u00eda A<\/span>\n                            <h3 class=\"font-bold text-slate-900\">Conflictos por Usos y Costumbres \/ Normativas Comunitarias<\/h3>\n                        <\/div>\n                        <p class=\"text-xs text-slate-700 leading-relaxed\">\n                            Ocurre predominantemente en zonas rurales con alto arraigo de sistemas normativos internos (Chiapas, Oaxaca, Hidalgo). Las minor\u00edas religiosas (principalmente evang\u00e9licas o conversas) enfrentan coerciones por negarse a participar o financiar festividades comunitarias tradicional-religiosas.\n                        <\/p>\n                        <div class=\"bg-white p-3 rounded-lg border border-amber-200 text-xs text-slate-600 space-y-1\">\n                            <strong class=\"text-amber-900 block font-semibold\">Manifestaciones Frecuentes:<\/strong>\n                            <ul class=\"list-disc pl-4 space-y-1\">\n                                <li>Cierre o destrucci\u00f3n de templos locales.<\/li>\n                                <li>Suspensi\u00f3n de agua potable y servicios b\u00e1sicos comunitarios.<\/li>\n                                <li>Detenciones arbitrarias por autoridades locales y multas il\u00edcitas.<\/li>\n                                <li>Desplazamiento forzado interno de familias creyentes.<\/li>\n                            <\/ul>\n                        <\/div>\n                    <\/div>\n\n                    <!-- Threat Category 2 -->\n                    <div class=\"bg-rose-50\/60 border border-rose-200 rounded-xl p-5 space-y-3\">\n                        <div class=\"flex items-center space-x-2\">\n                            <span class=\"bg-rose-600 text-white text-xs font-bold px-2.5 py-1 rounded-md\">Categor\u00eda B<\/span>\n                            <h3 class=\"font-bold text-slate-900\">Inseguridad Estructural y Crimen Organizado<\/h3>\n                        <\/div>\n                        <p class=\"text-xs text-slate-700 leading-relaxed\">\n                            Afecta a ministros de culto y comunidades en estados con alta presencia delictiva (Guerrero, Michoac\u00e1n, Tamaulipas, Veracruz, Sinaloa, Chiapas). Los sacerdotes y pastores son blanco de extorsiones por su labor comunitaria y postura pac\u00edfica.\n                        <\/p>\n                        <div class=\"bg-white p-3 rounded-lg border border-rose-200 text-xs text-slate-600 space-y-1\">\n                            <strong class=\"text-rose-900 block font-semibold\">Manifestaciones Frecuentes:<\/strong>\n                            <ul class=\"list-disc pl-4 space-y-1\">\n                                <li>Extorsi\u00f3n y cobro de \"derecho de piso\" sobre limosnas o diezmos.<\/li>\n                                <li>Amenazas de muerte a l\u00edderes comunitarios por oponerse al reclutamiento.<\/li>\n                                <li>Homicidios y privaci\u00f3n ilegal de la libertad de ministros de culto.<\/li>\n                                <li>Interrupci\u00f3n forzada de servicios religiosos en zonas de conflicto.<\/li>\n                            <\/ul>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Incident Hotspots Analysis -->\n                <div class=\"bg-slate-50 border border-slate-200 rounded-xl p-5\">\n                    <h3 class=\"text-sm font-bold text-slate-800 uppercase tracking-wider mb-3\">Entidades Federativas en Monitoreo Cr\u00edtico<\/h3>\n                    <div class=\"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-4 text-xs\">\n                        <div class=\"bg-white p-3 rounded-lg border border-slate-200\">\n                            <div class=\"font-bold text-indigo-950\">Chiapas<\/div>\n                            <span class=\"text-amber-700 font-semibold\">Usos y Costumbres & Crimen<\/span>\n                            <p class=\"text-slate-500 mt-1\">Alto \u00edndice de expulsiones en zonas ind\u00edgenas por din\u00e1micas de conversi\u00f3n y disputas territoriales.<\/p>\n                        <\/div>\n                        <div class=\"bg-white p-3 rounded-lg border border-slate-200\">\n                            <div class=\"font-bold text-indigo-950\">Oaxaca<\/div>\n                            <span class=\"text-amber-700 font-semibold\">Usos y Costumbres<\/span>\n                            <p class=\"text-slate-500 mt-1\">Casos reiterados de imposici\u00f3n de cuotas para fiestas patronales y privaci\u00f3n de derechos de agua.<\/p>\n                        <\/div>\n                        <div class=\"bg-white p-3 rounded-lg border border-slate-200\">\n                            <div class=\"font-bold text-indigo-950\">Hidalgo<\/div>\n                            <span class=\"text-amber-700 font-semibold\">Tensi\u00f3n Comunitaria<\/span>\n                            <p class=\"text-slate-500 mt-1\">Sanciones comunitarias y cierres ileg\u00edtimos de templos evang\u00e9licos en municipios del norte.<\/p>\n                        <\/div>\n                        <div class=\"bg-white p-3 rounded-lg border border-slate-200\">\n                            <div class=\"font-bold text-indigo-950\">Guerrero & Michoac\u00e1n<\/div>\n                            <span class=\"text-rose-700 font-semibold\">Crimen Organizado<\/span>\n                            <p class=\"text-slate-500 mt-1\">Intimidaci\u00f3n constante a parroquias y centros de atenci\u00f3n a v\u00edctimas gestionados por iglesias.<\/p>\n                        <\/div>\n                        <div class=\"bg-white p-3 rounded-lg border border-slate-200\">\n                            <div class=\"font-bold text-indigo-950\">Tamaulipas & Veracruz<\/div>\n                            <span class=\"text-rose-700 font-semibold\">Crimen Organizado<\/span>\n                            <p class=\"text-slate-500 mt-1\">Extorsi\u00f3n sistem\u00e1tica a l\u00edderes religiosos e inseguridad en traslados para labor pastoral.<\/p>\n                        <\/div>\n                        <div class=\"bg-white p-3 rounded-lg border border-slate-200\">\n                            <div class=\"font-bold text-indigo-950\">Zonas Urbanas Centrales<\/div>\n                            <span class=\"text-slate-700 font-semibold\">Secularizaci\u00f3n & Tolerancia<\/span>\n                            <p class=\"text-slate-500 mt-1\">Mayor diversidad y din\u00e1mica de desadscripci\u00f3n, junto con retos de objeci\u00f3n de conciencia.<\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/section>\n\n        <!-- TAB 4: MARCO NORMATIVO Y REGISTRO -->\n        <section id=\"view-legal\" class=\"tab-content hidden space-y-6\">\n            <div class=\"bg-white p-6 rounded-2xl shadow-sm border border-slate-200\">\n                <h2 class=\"text-xl font-bold text-slate-900 mb-2\">Marco Institucional, Normativo y Registro Jur\u00eddico<\/h2>\n                <p class=\"text-slate-600 text-sm leading-relaxed mb-6\">\n                    El Estado mexicano garantiza la libertad de religi\u00f3n, conciencia y convicciones \u00e9ticas a trav\u00e9s de un marco constitucional laico y la Ley de Asociaciones Religiosas y Culto P\u00fablico, regulando la convivencia pac\u00edfica entre credos.\n                <\/p>\n\n                <div class=\"grid grid-cols-1 md:grid-cols-3 gap-6 mb-8\">\n                    <div class=\"p-4 border border-slate-200 rounded-xl bg-slate-50\">\n                        <span class=\"text-xs font-bold text-[#006837] uppercase\">Art\u00edculo 24 Constitucional<\/span>\n                        <h3 class=\"font-bold text-slate-900 mt-1 mb-2\">Libertad de Convicci\u00f3n y Creencia<\/h3>\n                        <p class=\"text-xs text-slate-600 leading-relaxed\">\n                            Toda persona tiene derecho a la libertad de convicciones \u00e9ticas, de conciencia y de religi\u00f3n, y a tener o adoptar, en su caso, la de su agrado. Esta libertad incluye el derecho a cambiar de adscripci\u00f3n o no profesar ninguna creencia.\n                        <\/p>\n                    <\/div>\n\n                    <div class=\"p-4 border border-slate-200 rounded-xl bg-slate-50\">\n                        <span class=\"text-xs font-bold text-[#006837] uppercase\">Art\u00edculo 130 Constitucional<\/span>\n                        <h3 class=\"font-bold text-slate-900 mt-1 mb-2\">Principio Hist\u00f3rico de Laicidad<\/h3>\n                        <p class=\"text-xs text-slate-600 leading-relaxed\">\n                            Establece el principio hist\u00f3rico de la separaci\u00f3n del Estado y las iglesias. Las agrupaciones religiosas est\u00e1n sujetas a la ley y adquieren personalidad jur\u00eddica mediante su registro constitutivo como Asociaciones Religiosas (A.R.) ante la SEGOB.\n                        <\/p>\n                    <\/div>\n\n                    <div class=\"p-4 border border-slate-200 rounded-xl bg-slate-50\">\n                        <span class=\"text-xs font-bold text-[#006837] uppercase\">Ley de A.R. y Culto P\u00fablico<\/span>\n                        <h3 class=\"font-bold text-slate-900 mt-1 mb-2\">Requisitos de Personalidad Jur\u00eddica<\/h3>\n                        <p class=\"text-xs text-slate-600 leading-relaxed\">\n                            Exige acreditar un m\u00ednimo de 5 a\u00f1os de actividades religiosas continuas en M\u00e9xico, contar con estatutos vigentes que respeten las leyes nacionales y formalizar su domicilio ante la Direcci\u00f3n General de Asociaciones Religiosas.\n                        <\/p>\n                    <\/div>\n                <\/div>\n\n                <!-- Internal Cohesion Analysis -->\n                <div class=\"bg-slate-900 text-white rounded-xl p-6 border-l-4 border-[#006837]\">\n                    <h3 class=\"text-lg font-bold text-slate-100 mb-2\">Cohesi\u00f3n Religiosa y Pluralismo Familiar<\/h3>\n                    <p class=\"text-xs text-slate-300 leading-relaxed mb-4\">\n                        Seg\u00fan los datos censales analizados en la plataforma, la adscripci\u00f3n y movilidad religiosa se manifiesta en el \u00e1mbito de los hogares de la siguiente manera:\n                    <\/p>\n                    <div class=\"grid grid-cols-1 sm:grid-cols-3 gap-4 text-center\">\n                        <div class=\"bg-slate-800\/80 p-3 rounded-lg border border-slate-700\">\n                            <span class=\"text-2xl font-extrabold text-white block\">82.5%<\/span>\n                            <span class=\"text-xs text-slate-300\">De los hogares reportan que TODOS sus integrantes profesan la misma religi\u00f3n.<\/span>\n                        <\/div>\n                        <div class=\"bg-slate-800\/80 p-3 rounded-lg border border-slate-700\">\n                            <span class=\"text-2xl font-extrabold text-amber-300 block\">4.2%<\/span>\n                            <span class=\"text-xs text-slate-300\">De los hogares albergan la coexistencia de dos o m\u00e1s credos distintos.<\/span>\n                        <\/div>\n                        <div class=\"bg-slate-800\/80 p-3 rounded-lg border border-slate-700\">\n                            <span class=\"text-2xl font-extrabold text-slate-300 block\">6.4%<\/span>\n                            <span class=\"text-xs text-slate-300\">De los hogares tienen a la totalidad de sus miembros sin afiliaci\u00f3n religiosa.<\/span>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/section>\n\n    <\/main>\n\n    <!-- Footer Section -->\n    <footer class=\"bg-slate-900 border-t border-slate-800 text-slate-400 py-6 text-xs text-center mt-auto\">\n        <div class=\"max-w-7xl mx-auto px-4\">\n            <p>\u00a9 Movilidad Religiosa en M\u00e9xico | Basado en datos del Censo INEGI 2020 y Registros Oficiales SEGOB.<\/p>\n            <p class=\"mt-1 text-slate-500\">Dise\u00f1ado para la integraci\u00f3n web e investigaci\u00f3n de derechos humanos, din\u00e1micas sociorreligiosas y pluralismo.<\/p>\n        <\/div>\n    <\/footer>\n\n    <!-- JavaScript Data and Application Logic -->\n    <script>\n        \/\/ Data Sources from Report\n        const nationalData = {\n            catholic: 97864218,\n            evangelical: 14095307,\n            noReligion: 10211052,\n            noAffiliation: 3103464,\n            others: 248169,\n            unspecified: 491814\n        };\n\n        const minoritiesData = [\n            { name: 'Cristiana (General \/ No diferenciada)', count: 6778435 },\n            { name: 'Evang\u00e9lica (General)', count: 2387133 },\n            { name: 'Testigos de Jehov\u00e1', count: 1530909 },\n            { name: 'Pentecostal', count: 1179415 },\n            { name: 'Adventista del S\u00e9ptimo D\u00eda', count: 791109 },\n            { name: 'Presbiteriana', count: 428651 },\n            { name: 'Bautista', count: 384174 },\n            { name: 'SUD (Mormona)', count: 337998 },\n            { name: 'Otras ramas Evang\u00e9licas', count: 328519 },\n            { name: 'La Luz del Mundo', count: 190005 },\n            { name: 'Jud\u00eda', count: 58876 },\n            { name: 'Ra\u00edces Afro (Santer\u00eda\/Orishas)', count: 40799 },\n            { name: 'Espiritualista', count: 36764 },\n            { name: 'Ra\u00edces \u00c9tnicas \/ Ind\u00edgenas', count: 33372 },\n            { name: 'Tradiciones Orientales (Budismo, etc.)', count: 29985 },\n            { name: 'Cultos Populares', count: 19481 },\n            { name: 'Escuelas Esot\u00e9ricas y New Age', count: 11816 },\n            { name: 'Otras Religiones', count: 9094 },\n            { name: 'Isl\u00e1mica', count: 7982 }\n        ];\n\n        const statesData = [\n            { name: 'Aguascalientes', catholic: 89.3, evangelical: 4.8, secular: 5.5, credos: 11, ar: 142 },\n            { name: 'Baja California', catholic: 62.1, evangelical: 16.8, secular: 20.3, credos: 18, ar: 415 },\n            { name: 'Baja California Sur', catholic: 74.5, evangelical: 9.2, secular: 15.7, credos: 14, ar: 98 },\n            { name: 'Campeche', catholic: 60.1, evangelical: 24.3, secular: 15.1, credos: 15, ar: 165 },\n            { name: 'Chiapas', catholic: 53.9, evangelical: 32.5, secular: 13.2, credos: 19, ar: 512 },\n            { name: 'Chihuahua', catholic: 72.8, evangelical: 12.1, secular: 14.6, credos: 16, ar: 380 },\n            { name: 'Ciudad de M\u00e9xico', catholic: 76.2, evangelical: 7.3, secular: 15.9, credos: 22, ar: 1285 },\n            { name: 'Coahuila', catholic: 78.9, evangelical: 10.4, secular: 10.3, credos: 13, ar: 245 },\n            { name: 'Colima', catholic: 81.5, evangelical: 6.8, secular: 11.2, credos: 12, ar: 88 },\n            { name: 'Durango', catholic: 82.3, evangelical: 8.1, secular: 9.2, credos: 12, ar: 135 },\n            { name: 'Estado de M\u00e9xico', catholic: 78.6, evangelical: 9.1, secular: 11.8, credos: 20, ar: 950 },\n            { name: 'Guanajuato', catholic: 90.8, evangelical: 4.1, secular: 4.7, credos: 10, ar: 280 },\n            { name: 'Guerrero', catholic: 79.2, evangelical: 11.4, secular: 9.0, credos: 14, ar: 310 },\n            { name: 'Hidalgo', catholic: 80.1, evangelical: 10.2, secular: 9.3, credos: 13, ar: 220 },\n            { name: 'Jalisco', catholic: 89.2, evangelical: 4.7, secular: 5.7, credos: 16, ar: 620 },\n            { name: 'Michoac\u00e1n', catholic: 88.5, evangelical: 5.2, secular: 5.9, credos: 12, ar: 340 },\n            { name: 'Morelos', catholic: 74.1, evangelical: 12.8, secular: 12.6, credos: 15, ar: 290 },\n            { name: 'Nayarit', catholic: 81.2, evangelical: 7.9, secular: 10.4, credos: 12, ar: 115 },\n            { name: 'Nuevo Le\u00f3n', catholic: 77.1, evangelical: 10.8, secular: 11.7, credos: 16, ar: 510 },\n            { name: 'Oaxaca', catholic: 75.3, evangelical: 14.2, secular: 10.1, credos: 17, ar: 420 },\n            { name: 'Puebla', catholic: 82.1, evangelical: 8.9, secular: 8.6, credos: 15, ar: 480 },\n            { name: 'Quer\u00e9taro', catholic: 88.1, evangelical: 4.9, secular: 6.6, credos: 13, ar: 175 },\n            { name: 'Quintana Roo', catholic: 54.7, evangelical: 20.9, secular: 23.8, credos: 17, ar: 210 },\n            { name: 'San Luis Potos\u00ed', catholic: 85.3, evangelical: 6.8, secular: 7.5, credos: 12, ar: 230 },\n            { name: 'Sinaloa', catholic: 79.4, evangelical: 8.2, secular: 12.0, credos: 13, ar: 195 },\n            { name: 'Sonora', catholic: 75.0, evangelical: 10.1, secular: 14.4, credos: 14, ar: 260 },\n            { name: 'Tabasco', catholic: 62.2, evangelical: 27.1, secular: 10.3, credos: 16, ar: 320 },\n            { name: 'Tamaulipas', catholic: 67.9, evangelical: 17.4, secular: 14.2, credos: 15, ar: 390 },\n            { name: 'Tlaxcala', catholic: 87.2, evangelical: 6.1, secular: 6.3, credos: 11, ar: 125 },\n            { name: 'Veracruz', catholic: 74.3, evangelical: 15.6, secular: 9.7, credos: 17, ar: 640 },\n            { name: 'Yucat\u00e1n', catholic: 74.1, evangelical: 14.8, secular: 10.7, credos: 14, ar: 275 },\n            { name: 'Zacatecas', catholic: 92.3, evangelical: 3.8, secular: 3.6, credos: 9, ar: 110 }\n        ];\n\n        \/\/ Global Chart Instances\n        let chartNationalDistInstance = null;\n        let chartMinoritiesInstance = null;\n        let chartStateComparisonInstance = null;\n\n        \/\/ Tab Switching Logic\n        function switchTab(tabId) {\n            document.querySelectorAll('.tab-content').forEach(el => el.classList.add('hidden'));\n            document.querySelectorAll('.nav-tab').forEach(el => {\n                el.classList.remove('bg-[#006837]', 'text-white', 'shadow');\n                el.classList.add('text-slate-300', 'hover:bg-slate-700');\n            });\n\n            document.getElementById(`view-${tabId}`).classList.remove('hidden');\n            const activeNav = document.getElementById(`tab-${tabId}`);\n            activeNav.classList.add('bg-[#006837]', 'text-white', 'shadow');\n            activeNav.classList.remove('text-slate-300', 'hover:bg-slate-700');\n\n            if (tabId === 'states' && chartStateComparisonInstance) {\n                chartStateComparisonInstance.resize();\n            }\n        }\n\n        \/\/ Initialize National Donut Chart\n        function initNationalChart() {\n            const ctx = document.getElementById('chartNationalDist').getContext('2d');\n            chartNationalDistInstance = new Chart(ctx, {\n                type: 'doughnut',\n                data: {\n                    labels: [\n                        'Cat\u00f3lica (77.7%)',\n                        'Protestante \/ Evang\u00e9lica (11.2%)',\n                        'Sin Religi\u00f3n (8.1%)',\n                        'Creyentes sin Adscripci\u00f3n (2.5%)',\n                        'Otras Religiones (0.2%)',\n                        'No Especificado (0.4%)'\n                    ],\n                    datasets: [{\n                        data: [\n                            nationalData.catholic,\n                            nationalData.evangelical,\n                            nationalData.noReligion,\n                            nationalData.noAffiliation,\n                            nationalData.others,\n                            nationalData.unspecified\n                        ],\n                        backgroundColor: [\n                            '#3b82f6', \/\/ Blue\n                            '#d97706', \/\/ Warm Amber\n                            '#64748b', \/\/ Slate Gray\n                            '#0284c7', \/\/ Sky Blue\n                            '#006837', \/\/ Deep Green\n                            '#cbd5e1'  \/\/ Light Slate\n                        ],\n                        borderWidth: 2,\n                        borderColor: '#ffffff'\n                    }]\n                },\n                options: {\n                    responsive: true,\n                    maintainAspectRatio: false,\n                    plugins: {\n                        legend: {\n                            position: 'bottom',\n                            labels: {\n                                font: { size: 11 },\n                                boxWidth: 12,\n                                padding: 12\n                            }\n                        },\n                        tooltip: {\n                            callbacks: {\n                                label: function(context) {\n                                    const value = context.raw || 0;\n                                    return ` ${context.label}: ${value.toLocaleString('es-MX')} personas`;\n                                }\n                            }\n                        }\n                    }\n                }\n            });\n        }\n\n        \/\/ Initialize Minorities Horizontal Bar Chart\n        function initMinoritiesChart() {\n            const topMinorities = minoritiesData.slice(0, 10);\n            const ctx = document.getElementById('chartMinorities').getContext('2d');\n            \n            chartMinoritiesInstance = new Chart(ctx, {\n                type: 'bar',\n                data: {\n                    labels: topMinorities.map(m => m.name.length > 20 ? m.name.substring(0, 20) + '...' : m.name),\n                    datasets: [{\n                        label: 'N\u00famero de Creyentes',\n                        data: topMinorities.map(m => m.count),\n                        backgroundColor: '#006837',\n                        borderRadius: 6\n                    }]\n                },\n                options: {\n                    indexAxis: 'y',\n                    responsive: true,\n                    maintainAspectRatio: false,\n                    plugins: {\n                        legend: { display: false },\n                        tooltip: {\n                            callbacks: {\n                                label: function(context) {\n                                    return ` ${context.raw.toLocaleString('es-MX')} creyentes`;\n                                }\n                            }\n                        }\n                    },\n                    scales: {\n                        x: {\n                            ticks: {\n                                callback: function(value) {\n                                    return (value \/ 1000000).toFixed(1) + 'M';\n                                }\n                            }\n                        }\n                    }\n                }\n            });\n        }\n\n        \/\/ Initialize State Comparison Chart\n        function initStateComparisonChart() {\n            const ctx = document.getElementById('chartStateComparison').getContext('2d');\n            chartStateComparisonInstance = new Chart(ctx, {\n                type: 'bar',\n                data: {\n                    labels: statesData.map(s => s.name),\n                    datasets: [\n                        {\n                            label: '% Cat\u00f3lica',\n                            data: statesData.map(s => s.catholic),\n                            backgroundColor: '#3b82f6'\n                        },\n                        {\n                            label: '% Evang\u00e9lica',\n                            data: statesData.map(s => s.evangelical),\n                            backgroundColor: '#d97706'\n                        },\n                        {\n                            label: '% Sin Religi\u00f3n \/ No Afiliado',\n                            data: statesData.map(s => s.secular),\n                            backgroundColor: '#64748b'\n                        }\n                    ]\n                },\n                options: {\n                    responsive: true,\n                    maintainAspectRatio: false,\n                    scales: {\n                        x: {\n                            ticks: {\n                                font: { size: 9 },\n                                maxRotation: 90,\n                                minRotation: 45\n                            }\n                        },\n                        y: {\n                            max: 100,\n                            ticks: {\n                                callback: function(value) { return value + '%'; }\n                            }\n                        }\n                    },\n                    plugins: {\n                        legend: { position: 'top' },\n                        tooltip: {\n                            callbacks: {\n                                label: function(context) {\n                                    return ` ${context.dataset.label}: ${context.raw}%`;\n                                }\n                            }\n                        }\n                    }\n                }\n            });\n        }\n\n        \/\/ Render Minority List with Search Function\n        function renderMinorityList(items) {\n            const container = document.getElementById('minorityList');\n            container.innerHTML = '';\n            items.forEach(item => {\n                const div = document.createElement('div');\n                div.className = 'p-3 text-xs flex justify-between items-center hover:bg-slate-50';\n                div.innerHTML = `\n                    <span class=\"font-medium text-slate-800\">${item.name}<\/span>\n                    <span class=\"font-mono font-bold text-[#006837] bg-emerald-50 px-2 py-0.5 rounded border border-emerald-100\">${item.count.toLocaleString('es-MX')}<\/span>\n                `;\n                container.appendChild(div);\n            });\n        }\n\n        function filterMinorities() {\n            const query = document.getElementById('searchMinority').value.toLowerCase();\n            const filtered = minoritiesData.filter(m => m.name.toLowerCase().includes(query));\n            renderMinorityList(filtered);\n        }\n\n        \/\/ Populate State Table & Selectors\n        function populateStatesTable() {\n            const tableBody = document.getElementById('stateTableBody');\n            const selector = document.getElementById('stateSelector');\n\n            tableBody.innerHTML = '';\n\n            statesData.forEach(state => {\n                const option = document.createElement('option');\n                option.value = state.name;\n                option.textContent = state.name;\n                selector.appendChild(option);\n\n                const tr = document.createElement('tr');\n                tr.id = `row-${state.name.replace(\/\\s+\/g, '-')}`;\n                tr.className = 'hover:bg-slate-50 transition-colors';\n                tr.innerHTML = `\n                    <td class=\"px-4 py-2.5 font-semibold text-slate-900\">${state.name}<\/td>\n                    <td class=\"px-4 py-2.5 text-right font-mono font-bold text-indigo-700\">${state.catholic}%<\/td>\n                    <td class=\"px-4 py-2.5 text-right font-mono font-bold text-amber-700\">${state.evangelical}%<\/td>\n                    <td class=\"px-4 py-2.5 text-right font-mono font-bold text-slate-700\">${state.secular}%<\/td>\n                    <td class=\"px-4 py-2.5 text-center font-bold text-[#006837]\">${state.credos}<\/td>\n                    <td class=\"px-4 py-2.5 text-right font-mono font-bold text-slate-800\">${state.ar.toLocaleString('es-MX')}<\/td>\n                `;\n                tableBody.appendChild(tr);\n            });\n        }\n\n        function highlightState() {\n            const selectedName = document.getElementById('stateSelector').value;\n            const detailBox = document.getElementById('stateDetailBox');\n\n            document.querySelectorAll('#stateTableBody tr').forEach(r => r.classList.remove('bg-emerald-100'));\n\n            if (selectedName === 'ALL') {\n                detailBox.classList.add('hidden');\n                return;\n            }\n\n            const state = statesData.find(s => s.name === selectedName);\n            if (state) {\n                detailBox.classList.remove('hidden');\n                document.getElementById('detailStateName').textContent = state.name;\n                document.getElementById('detailCatholic').textContent = `${state.catholic}%`;\n                document.getElementById('detailEvangelical').textContent = `${state.evangelical}%`;\n                document.getElementById('detailSecular').textContent = `${state.secular}%`;\n                document.getElementById('detailCredos').textContent = state.credos;\n                document.getElementById('detailAR').textContent = state.ar.toLocaleString('es-MX');\n\n                const targetRow = document.getElementById(`row-${state.name.replace(\/\\s+\/g, '-')}`);\n                if (targetRow) {\n                    targetRow.classList.add('bg-emerald-100');\n                    targetRow.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n                }\n            }\n        }\n\n        \/\/ Application Initialization\n        document.addEventListener('DOMContentLoaded', () => {\n            initNationalChart();\n            initMinoritiesChart();\n            initStateComparisonChart();\n            renderMinorityList(minoritiesData);\n            populateStatesTable();\n        });\n    <\/script>\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Movilidad Religiosa en M\u00e9xico MRM Movilidad Religiosa en M\u00e9xico Plataforma de Monitoreo Demogr\u00e1fico, Transici\u00f3n de Credos y Pluralismo Religioso Panorama Nacional Explorador Estatal Matriz de Riesgos Marco Jur\u00eddico Poblaci\u00f3n Total (2020) 126.01M Habitantes censados (INEGI) Poblaci\u00f3n Cat\u00f3lica 77.7% 97,864,218 de adscritos Protestante \/ Evang\u00e9lica 11.2% 14,095,307 de adscritos Asociaciones Religiosas 10,651+ Registradas ante SEGOB Panorama [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_surecart_dashboard_logo_width":"180px","_surecart_dashboard_show_logo":true,"_surecart_dashboard_navigation_orders":true,"_surecart_dashboard_navigation_invoices":true,"_surecart_dashboard_navigation_subscriptions":true,"_surecart_dashboard_navigation_downloads":true,"_surecart_dashboard_navigation_billing":true,"_surecart_dashboard_navigation_account":true,"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-3330","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=\/wp\/v2\/pages\/3330","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3330"}],"version-history":[{"count":28,"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=\/wp\/v2\/pages\/3330\/revisions"}],"predecessor-version":[{"id":3445,"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=\/wp\/v2\/pages\/3330\/revisions\/3445"}],"wp:attachment":[{"href":"https:\/\/cedic.cem.org.mx\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3330"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}