{"id":4295,"date":"2025-07-10T16:56:22","date_gmt":"2025-07-10T16:56:22","guid":{"rendered":"https:\/\/www.ciudadmujer.gob.hn\/?page_id=4295"},"modified":"2025-11-25T09:58:56","modified_gmt":"2025-11-25T15:58:56","slug":"calendarios-eventos-choluteca-nuevos","status":"publish","type":"page","link":"https:\/\/www.ciudadmujer.gob.hn\/?page_id=4295","title":{"rendered":"Calendarios Eventos Choluteca Nuevos"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"4295\" class=\"elementor elementor-4295\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ccd923e elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ccd923e\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a5b4708\" data-id=\"a5b4708\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4c6644e elementor-widget elementor-widget-text-editor\" data-id=\"4c6644e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>CCM <span class=\"hl\"> Choluteca\u00a0<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7291e88 elementor-widget elementor-widget-text-editor\" data-id=\"7291e88\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tCalendario Mensual <span class=\"hl\"> de Actividades\u00a0<\/span>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-7b5b9d7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7b5b9d7\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-bb59d0b\" data-id=\"bb59d0b\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ecdd8d1 elementor-widget elementor-widget-heading\" data-id=\"ecdd8d1\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"tituloMesSuperior\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Septiembre 2025<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-cdb1049 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"cdb1049\" data-element_type=\"section\" data-e-type=\"section\" id=\"ontop\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8b2596f dispad\" data-id=\"8b2596f\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-78fc444 elementor-section-height-min-height elementor-section-boxed elementor-section-height-default\" data-id=\"78fc444\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-16 elementor-inner-column elementor-element elementor-element-3403fcd selectedtabmae\" data-id=\"3403fcd\" data-element_type=\"column\" data-e-type=\"column\" id=\"seltab\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-12ddce2 mod-trigger mod-MAE elementor-widget elementor-widget-image\" data-id=\"12ddce2\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"circlemae\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-20-150x150.png\" class=\"attachment-thumbnail size-thumbnail wp-image-1902\" alt=\"\" srcset=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-20-150x150.png 150w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-20-300x300.png 300w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-20-1024x1024.png 1024w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-20-768x768.png 768w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-20-1536x1536.png 1536w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-20-2048x2048.png 2048w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-53cd470 elementor-widget elementor-widget-text-editor\" data-id=\"53cd470\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>mAE<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-967ac26 elementor-widget elementor-widget-text-editor\" data-id=\"967ac26\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>M\u00f3dulo de atenci\u00f3n econ\u00f3mica<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-16 elementor-inner-column elementor-element elementor-element-7715cb5 selectedtabmssr\" data-id=\"7715cb5\" data-element_type=\"column\" data-e-type=\"column\" id=\"seltab\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-abd375c mod-trigger mod-MSSR elementor-widget elementor-widget-image\" data-id=\"abd375c\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"circlemssr\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-21-1024x1024.png\" class=\"attachment-large size-large wp-image-1903\" alt=\"\" srcset=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-21-1024x1024.png 1024w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-21-300x300.png 300w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-21-150x150.png 150w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-21-768x768.png 768w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-21-1536x1536.png 1536w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-21-2048x2048.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-300ddb2 elementor-widget elementor-widget-text-editor\" data-id=\"300ddb2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>mSSR<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b9b8e44 elementor-widget elementor-widget-text-editor\" data-id=\"b9b8e44\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>M\u00f3dulo de Salud Sexual y Reproductiva<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-16 elementor-inner-column elementor-element elementor-element-82c82ce selectedtabmaprodem\" data-id=\"82c82ce\" data-element_type=\"column\" data-e-type=\"column\" id=\"seltab\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-31061d5 mod-trigger mod-MAPRODEM elementor-widget elementor-widget-image\" data-id=\"31061d5\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"circlemaprodem\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-22-1024x1024.png\" class=\"attachment-large size-large wp-image-1904\" alt=\"\" srcset=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-22-1024x1024.png 1024w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-22-300x300.png 300w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-22-150x150.png 150w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-22-768x768.png 768w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-22-1536x1536.png 1536w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-22-2048x2048.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d780569 elementor-widget elementor-widget-text-editor\" data-id=\"d780569\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>MAPRODEM<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e578aa0 elementor-widget elementor-widget-text-editor\" data-id=\"e578aa0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>M\u00f3dulo de Atenci\u00f3n y Protecci\u00f3n a los derechos de la mujer<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-16 elementor-inner-column elementor-element elementor-element-14bfede selectedtabmaa\" data-id=\"14bfede\" data-element_type=\"column\" data-e-type=\"column\" id=\"seltab\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c3a9250 mod-trigger mod-MAA elementor-widget elementor-widget-image\" data-id=\"c3a9250\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"circlemaa\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-23-1024x1024.png\" class=\"attachment-large size-large wp-image-1905\" alt=\"\" srcset=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-23-1024x1024.png 1024w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-23-300x300.png 300w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-23-150x150.png 150w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-23-768x768.png 768w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-23-1536x1536.png 1536w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-23-2048x2048.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b5e656c elementor-widget elementor-widget-text-editor\" data-id=\"b5e656c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>MAA<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-46c9ca0 elementor-widget elementor-widget-text-editor\" data-id=\"46c9ca0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #717070;\">M\u00f3dulo de Atenci\u00f3n a los Adolescentes<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-16 elementor-inner-column elementor-element elementor-element-9af4442 selectedtabmec\" data-id=\"9af4442\" data-element_type=\"column\" data-e-type=\"column\" id=\"seltab\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-97788fc mod-trigger mod-MEC elementor-widget elementor-widget-image\" data-id=\"97788fc\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"circlemec\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-24-1024x1024.png\" class=\"attachment-large size-large wp-image-1906\" alt=\"\" srcset=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-24-1024x1024.png 1024w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-24-300x300.png 300w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-24-150x150.png 150w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-24-768x768.png 768w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-24-1536x1536.png 1536w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-24-2048x2048.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a746f86 elementor-widget elementor-widget-text-editor\" data-id=\"a746f86\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>MEC<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-50b3162 elementor-widget elementor-widget-text-editor\" data-id=\"50b3162\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #717070;\">M\u00f3dulo de Educaci\u00f3n Comunitaria<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-16 elementor-inner-column elementor-element elementor-element-535a9eb selectedtabmai\" data-id=\"535a9eb\" data-element_type=\"column\" data-e-type=\"column\" id=\"seltab\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5bcc0ec mod-trigger mod-MAI elementor-widget elementor-widget-image\" data-id=\"5bcc0ec\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"circlemai\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-25-1024x1024.png\" class=\"attachment-large size-large wp-image-1907\" alt=\"\" srcset=\"https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-25-1024x1024.png 1024w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-25-300x300.png 300w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-25-150x150.png 150w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-25-768x768.png 768w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-25-1536x1536.png 1536w, https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2024\/03\/ICONOS_CIUDAD-MUJER_2022_-25-2048x2048.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f62de9b elementor-widget elementor-widget-text-editor\" data-id=\"f62de9b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>MAI<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1fe712d elementor-widget elementor-widget-text-editor\" data-id=\"1fe712d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #717070;\">M\u00f3dulo de Atenci\u00f3n Infantil<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fa3009d changecolorprimary elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"fa3009d\" data-element_type=\"section\" data-e-type=\"section\" id=\"calSection\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-5287033\" data-id=\"5287033\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-035f0e8 temhide elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"035f0e8\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-6ccf758 cicrlenum\" data-id=\"6ccf758\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a358bec elementor-widget elementor-widget-text-editor\" data-id=\"a358bec\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>1<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-bd7d41e\" data-id=\"bd7d41e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5c837dd adbtncs elementor-widget elementor-widget-text-editor\" data-id=\"5c837dd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Miercoles<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-f10fabf\" data-id=\"f10fabf\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1fe0f6a adbtncssecto elementor-widget elementor-widget-text-editor\" data-id=\"1fe0f6a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>CHARLA: USO CORRECTO DE PRESERVATIVOS E INFECCIONES DE TRANSMISI\u00d3N SEXUAL<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-41d2050\" data-id=\"41d2050\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-10d9b73 adbtncs elementor-widget elementor-widget-text-editor\" data-id=\"10d9b73\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>9:00 A.M. &#8211; 11 00 A.M.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1cabc07 adbtncs elementor-widget elementor-widget-text-editor\" data-id=\"1cabc07\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Centro Ciudad Mujer Choloma<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<div class=\"elementor-element elementor-element-d23935e elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"d23935e\" data-element_type=\"widget\" data-e-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\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Calendario de Eventos - WordPress Compatible<\/title>\n    <style>\n        .events-calendario-container {\n            max-width: 1200px;\n            margin: 20px auto;\n            background: rgba(255, 255, 255, 0.1);\n            backdrop-filter: blur(20px);\n            border-radius: 20px;\n            border: 1px solid rgba(255, 255, 255, 0.2);\n            overflow: hidden;\n            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);\n        }\n\n        .events-calendario-header {\n            display: flex;\n            justify-content: space-between;\n            align-items: center;\n            padding: 25px 35px;\n            background: rgba(255, 255, 255, 0.15);\n            backdrop-filter: blur(10px);\n            border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n        }\n\n        .events-mes-navegacion {\n            display: flex;\n            align-items: center;\n            gap: 25px;\n        }\n\n        .events-btn-nav {\n            background: rgba(255, 255, 255, 0.2);\n            backdrop-filter: blur(10px);\n            border: 1px solid rgba(255, 255, 255, 0.3);\n            border-radius: 50%;\n            width: 45px;\n            height: 45px;\n            font-size: 20px;\n            cursor: pointer;\n            color: white;\n            transition: all 0.3s ease;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .events-btn-nav:hover {\n            background: rgba(255, 255, 255, 0.3);\n            transform: scale(1.1);\n        }\n\n        .events-mes-actual {\n            font-size: 28px;\n            font-weight: 700;\n            color: white;\n            text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\n        }\n\n        .events-buscar-eventos {\n            display: flex;\n            align-items: center;\n            gap: 15px;\n        }\n\n        .events-buscar-eventos input {\n            padding: 12px 20px;\n            border: 1px solid rgba(255, 255, 255, 0.3);\n            border-radius: 25px;\n            outline: none;\n            width: 220px;\n            background: rgba(255, 255, 255, 0.2);\n            backdrop-filter: blur(10px);\n            color: white;\n            placeholder-color: rgba(255, 255, 255, 0.7);\n        }\n\n        .events-buscar-eventos input::placeholder {\n            color: rgba(255, 255, 255, 0.7);\n        }\n\n        .events-btn-encontrar {\n            background: rgba(23, 162, 184, 0.8);\n            backdrop-filter: blur(10px);\n            color: white;\n            border: 1px solid rgba(255, 255, 255, 0.3);\n            padding: 12px 25px;\n            border-radius: 25px;\n            cursor: pointer;\n            font-weight: 600;\n            transition: all 0.3s ease;\n        }\n\n        .events-btn-encontrar:hover {\n            background: rgba(23, 162, 184, 1);\n            transform: translateY(-2px);\n        }\n\n        .events-calendario-grid {\n            display: grid;\n            grid-template-columns: repeat(7, 1fr);\n        }\n\n        .events-dia-semana {\n            background: rgba(108, 117, 125, 0.8);\n            backdrop-filter: blur(10px);\n            color: white;\n            padding: 18px 8px;\n            text-align: center;\n            font-weight: 700;\n            font-size: 14px;\n            text-transform: uppercase;\n            letter-spacing: 1px;\n        }\n\n        .events-dia-celda {\n            min-height: 140px;\n            border: 1px solid rgba(255, 255, 255, 0.1);\n            position: relative;\n            padding: 12px;\n            background: rgba(255, 255, 255, 0.05);\n            backdrop-filter: blur(5px);\n        }\n\n        .events-dia-numero {\n            font-size: 20px;\n            font-weight: 700;\n            color: white;\n            margin-bottom: 10px;\n            text-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);\n        }\n\n        .events-evento {\n            background: rgba(255, 255, 255, 0.15);\n            backdrop-filter: blur(15px);\n            border: 1px solid rgba(255, 255, 255, 0.2);\n            border-radius: 10px;\n            padding: 8px;\n            margin-bottom: 6px;\n            font-size: 11px;\n            line-height: 1.4;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            color: white;\n            display: flex;\n            align-items: center;\n            gap: 8px;\n            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);\n        }\n\n        .events-evento:hover {\n            background: rgba(255, 255, 255, 0.25);\n            transform: translateY(-2px);\n            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);\n        }\n\n        .events-evento-imagen {\n            width: 30px;\n            height: 30px;\n            border-radius: 6px;\n            object-fit: cover;\n            flex-shrink: 0;\n        }\n\n        .events-evento-info {\n            flex: 1;\n        }\n\n        .events-evento.events-destacado {\n            background: rgba(23, 162, 184, 0.3);\n            border-color: rgba(23, 162, 184, 0.5);\n        }\n\n        .events-evento.events-especial {\n            background: rgba(255, 193, 7, 0.3);\n            border-color: rgba(255, 193, 7, 0.5);\n        }\n\n        .events-evento-hora {\n            font-weight: 700;\n            display: block;\n            font-size: 10px;\n            opacity: 0.9;\n        }\n\n        .events-evento-titulo {\n            font-weight: 500;\n            font-size: 10px;\n            margin-top: 2px;\n        }\n\n        .events-hoy {\n            background: rgba(23, 162, 184, 0.2) !important;\n            border: 2px solid rgba(23, 162, 184, 0.5) !important;\n        }\n\n        .events-hoy .events-dia-numero {\n            color: #17a2b8;\n            font-weight: 900;\n        }\n\n        .events-mes-anterior,\n        .events-mes-siguiente {\n            opacity: 0.4;\n        }\n\n        .events-mes-anterior .events-evento,\n        .events-mes-siguiente .events-evento {\n            opacity: 0.3;\n        }\n\n        \/* MODAL SUPER ROBUSTO PARA WORDPRESS *\/\n        .events-modal {\n            display: none !important;\n            position: fixed !important;\n            z-index: 999999 !important;\n            left: 0 !important;\n            top: 0 !important;\n            width: 100vw !important;\n            height: 100vh !important;\n            background-color: rgba(0, 0, 0, 0.8) !important;\n            backdrop-filter: blur(10px) !important;\n            overflow: hidden !important;\n        }\n\n        .events-modal.events-show {\n            display: flex !important;\n            align-items: center !important;\n            justify-content: center !important;\n            margin-top: -128px;\n        }\n\n        .events-modal-content {\n            background: rgba(255, 255, 255, 0.1) !important;\n            backdrop-filter: blur(30px) !important;\n            border: 1px solid rgba(255, 255, 255, 0.2) !important;\n            border-radius: 20px !important;\n            width: 90% !important;\n            max-width: 600px !important;\n            max-height: 90vh !important;\n            box-shadow: 0 15px 50px rgba(0, 0, 0, 0.3) !important;\n            color: white !important;\n            position: relative !important;\n            margin: 0 !important;\n            padding: 0 !important;\n            overflow: hidden !important;\n            transform: scale(0.7) !important;\n            opacity: 0 !important;\n            transition: all 0.3s ease !important;\n        }\n\n        .events-modal.events-show .events-modal-content {\n            transform: scale(1) !important;\n            opacity: 1 !important;\n        }\n\n        .events-modal-header {\n            position: relative !important;\n            height: 200px !important;\n            overflow: hidden !important;\n            border-radius: 20px 20px 0 0 !important;\n            cursor: pointer !important;\n        }\n\n        .events-modal-imagen {\n            width: 100% !important;\n            height: 100% !important;\n            object-fit: cover !important;\n            cursor: pointer !important;\n            transition: transform 0.3s ease !important;\n        }\n\n        .events-modal-imagen:hover {\n            transform: scale(1.02) !important;\n        }\n\n        \/* Indicador de que la imagen es clickeable *\/\n        .events-modal-header::after {\n            content: '\ud83d\udd0d' !important;\n            position: absolute !important;\n            bottom: 15px !important;\n            right: 15px !important;\n            background: rgba(0, 0, 0, 0.8) !important;\n            color: white !important;\n            padding: 8px 12px !important;\n            border-radius: 20px !important;\n            font-size: 16px !important;\n            backdrop-filter: blur(10px) !important;\n            border: 1px solid rgba(255, 255, 255, 0.3) !important;\n            transition: all 0.3s ease !important;\n        }\n\n        .events-modal-header:hover::after {\n            background: rgba(23, 162, 184, 0.9) !important;\n            transform: scale(1.1) !important;\n        }\n\n        .events-modal-overlay {\n            position: absolute !important;\n            top: 0 !important;\n            left: 0 !important;\n            right: 0 !important;\n            bottom: 0 !important;\n            background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0.7)) !important;\n            pointer-events: none !important;\n        }\n\n        .events-close {\n            position: absolute !important;\n            top: 15px !important;\n            right: 20px !important;\n            color: white !important;\n            font-size: 30px !important;\n            font-weight: bold !important;\n            cursor: pointer !important;\n            background: rgba(0, 0, 0, 0.7) !important;\n            border-radius: 50% !important;\n            width: 45px !important;\n            height: 45px !important;\n            display: flex !important;\n            align-items: center !important;\n            justify-content: center !important;\n            backdrop-filter: blur(10px) !important;\n            z-index: 10 !important;\n            border: 2px solid rgba(255, 255, 255, 0.3) !important;\n            transition: all 0.3s ease !important;\n        }\n\n        .events-close:hover {\n            background: rgba(255, 0, 0, 0.8) !important;\n            transform: scale(1.1) !important;\n        }\n\n        .events-modal-body {\n            padding: 25px !important;\n            overflow-y: auto !important;\n            max-height: calc(90vh - 200px) !important;\n        }\n\n        .events-modal-titulo {\n            font-size: 24px !important;\n            font-weight: 700 !important;\n            margin-bottom: 15px !important;\n            color: white !important;\n            line-height: 1.3 !important;\n        }\n\n        .events-modal-detalle {\n            font-size: 16px !important;\n            line-height: 1.6 !important;\n            color: rgba(255, 255, 255, 0.9) !important;\n        }\n\n        .events-modal-detalle strong {\n            color: #17a2b8 !important;\n        }\n\n        \/* LIGHTBOX MEJORADO PARA IMAGEN AMPLIADA *\/\n        .events-lightbox {\n            display: none !important;\n            position: fixed !important;\n            z-index: 9999999 !important;\n            left: 0 !important;\n            top: 0 !important;\n            width: 100vw !important;\n            height: 100vh !important;\n            background-color: rgba(0, 0, 0, 0.95) !important;\n            backdrop-filter: blur(15px) !important;\n            overflow: hidden !important;\n        }\n\n        .events-lightbox.events-show {\n            display: flex !important;\n            align-items: center !important;\n            justify-content: center !important;\n            animation: fadeInLightbox 0.3s ease-out !important;\n        }\n\n        @keyframes fadeInLightbox {\n            from {\n                opacity: 0 !important;\n                backdrop-filter: blur(0px) !important;\n            }\n            to {\n                opacity: 1 !important;\n                backdrop-filter: blur(15px) !important;\n            }\n        }\n\n        .events-lightbox-content {\n            max-width: 95% !important;\n            max-height: 95% !important;\n            border-radius: 15px !important;\n            box-shadow: 0 25px 80px rgba(0, 0, 0, 0.6) !important;\n            border: 3px solid rgba(255, 255, 255, 0.3) !important;\n            transform: scale(0.8) !important;\n            transition: transform 0.3s ease !important;\n            object-fit: contain !important;\n        }\n\n        .events-lightbox.events-show .events-lightbox-content {\n            transform: scale(1) !important;\n        }\n\n        .events-lightbox-close {\n            position: absolute !important;\n            top: 20px !important;\n            right: 30px !important;\n            color: white !important;\n            font-size: 40px !important;\n            font-weight: bold !important;\n            cursor: pointer !important;\n            background: rgba(0, 0, 0, 0.8) !important;\n            border-radius: 50% !important;\n            width: 60px !important;\n            height: 60px !important;\n            display: flex !important;\n            align-items: center !important;\n            justify-content: center !important;\n            backdrop-filter: blur(10px) !important;\n            transition: all 0.3s ease !important;\n            border: 3px solid rgba(255, 255, 255, 0.3) !important;\n            z-index: 10 !important;\n        }\n\n        .events-lightbox-close:hover {\n            background: rgba(255, 0, 0, 0.9) !important;\n            transform: scale(1.1) rotate(90deg) !important;\n            border-color: rgba(255, 0, 0, 0.5) !important;\n        }\n\n        \/* Indicadores de navegaci\u00f3n en lightbox *\/\n        .events-lightbox-info {\n            position: absolute !important;\n            bottom: 30px !important;\n            left: 50% !important;\n            transform: translateX(-50%) !important;\n            background: rgba(0, 0, 0, 0.8) !important;\n            color: white !important;\n            padding: 10px 20px !important;\n            border-radius: 25px !important;\n            backdrop-filter: blur(10px) !important;\n            border: 1px solid rgba(255, 255, 255, 0.3) !important;\n            font-size: 14px !important;\n            font-weight: 500 !important;\n        }\n\n        .events-loading {\n            text-align: center;\n            padding: 40px;\n            color: white;\n            font-size: 18px;\n        }\n\n        .events-loading::after {\n            content: \"\";\n            display: inline-block;\n            width: 20px;\n            height: 20px;\n            border: 3px solid rgba(255, 255, 255, 0.3);\n            border-radius: 50%;\n            border-top-color: white;\n            animation: spin 1s ease-in-out infinite;\n            margin-left: 10px;\n        }\n\n        @keyframes spin {\n            to { transform: rotate(360deg); }\n        }\n\n        .events-error {\n            text-align: center;\n            padding: 40px;\n            color: #ff6b6b;\n            background: rgba(255, 107, 107, 0.1);\n            border-radius: 10px;\n            margin: 20px;\n        }\n\n        .events-debug {\n            background: rgba(255, 255, 255, 0.1);\n            border: 1px solid rgba(255, 255, 255, 0.2);\n            border-radius: 10px;\n            padding: 15px;\n            margin: 20px;\n            color: white;\n            font-family: monospace;\n            font-size: 12px;\n            display: none;\n        }\n\n        .events-debug.show {\n            display: block;\n        }\n\n        @media (max-width: 768px) {\n            .events-calendario-header {\n                flex-direction: column;\n                gap: 20px;\n                padding: 20px;\n            }\n\n            .events-buscar-eventos input {\n                width: 180px;\n            }\n\n            .events-dia-celda {\n                min-height: 100px;\n                padding: 6px;\n            }\n\n            .events-evento {\n                font-size: 9px;\n                padding: 4px;\n                margin-bottom: 3px;\n            }\n\n            .events-evento-imagen {\n                width: 20px;\n                height: 20px;\n            }\n\n            .events-dia-numero {\n                font-size: 16px;\n            }\n\n            .events-modal-content {\n                width: 95% !important;\n                max-width: none !important;\n            }\n\n            .events-modal-header {\n                height: 150px !important;\n            }\n\n            .events-modal-body {\n                padding: 20px !important;\n            }\n\n            .events-lightbox-content {\n                max-width: 98% !important;\n                max-height: 90% !important;\n            }\n\n            .events-lightbox-close {\n                top: 10px !important;\n                right: 15px !important;\n                width: 50px !important;\n                height: 50px !important;\n                font-size: 30px !important;\n            }\n        }\n\n        \/* Efectos adicionales de glassmorphism *\/\n        .events-calendario-container::before {\n            content: '';\n            position: absolute;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: linear-gradient(45deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.05) 100%);\n            pointer-events: none;\n        }\n\n        \/* Evitar interferencias de WordPress *\/\n        .events-modal * {\n            box-sizing: border-box !important;\n        }\n\n        \/* Ocultar scrollbars de WordPress cuando modal est\u00e1 abierto *\/\n        body.events-modal-open {\n            overflow: hidden !important;\n            height: 100vh !important;\n        }\n\n        body.events-modal-open #wpadminbar {\n            display: none !important;\n        }\n\n        \/* Bot\u00f3n para regresar al mes actual *\/\n        .events-btn-hoy {\n            background: rgba(40, 167, 69, 0.8) !important;\n            backdrop-filter: blur(10px) !important;\n            color: white !important;\n            border: 1px solid rgba(255, 255, 255, 0.3) !important;\n            padding: 8px 15px !important;\n            border-radius: 20px !important;\n            cursor: pointer !important;\n            font-weight: 600 !important;\n            font-size: 12px !important;\n            transition: all 0.3s ease !important;\n            text-transform: uppercase !important;\n            letter-spacing: 0.5px !important;\n        }\n\n        .events-btn-hoy:hover {\n            background: rgba(40, 167, 69, 1) !important;\n            transform: translateY(-2px) !important;\n        }\n\n        \/* Toggle para debug *\/\n        .events-btn-debug {\n            background: rgba(108, 117, 125, 0.8) !important;\n            backdrop-filter: blur(10px) !important;\n            color: white !important;\n            border: 1px solid rgba(255, 255, 255, 0.3) !important;\n            padding: 5px 10px !important;\n            border-radius: 15px !important;\n            cursor: pointer !important;\n            font-weight: 500 !important;\n            font-size: 10px !important;\n            transition: all 0.3s ease !important;\n            margin-left: 10px !important;\n        }\n\n        .events-btn-debug:hover {\n            background: rgba(108, 117, 125, 1) !important;\n        }\n    <\/style>\n<\/head>\n<body>\n    <div class=\"events-calendario-container\">\n        <div class=\"events-calendario-header\">\n            <div class=\"events-mes-navegacion\">\n                <button class=\"events-btn-nav\" onclick=\"cambiarMes(-1)\">\u2039<\/button>\n                <span class=\"events-mes-actual\" id=\"mesActual\">Cargando...<\/span>\n                <button class=\"events-btn-nav\" onclick=\"cambiarMes(1)\">\u203a<\/button>\n                <button class=\"events-btn-hoy\" onclick=\"irAlMesActual()\">Hoy<\/button>\n                <button style=\"display:none\" class=\"events-btn-debug\" onclick=\"toggleDebug()\">Debug<\/button>\n            <\/div>\n            <div class=\"events-buscar-eventos\">\n                <input type=\"text\" placeholder=\"Buscar por evento\" id=\"buscarInput\">\n                <button class=\"events-btn-encontrar\" onclick=\"buscarEventos()\">Encuentra Eventos<\/button>\n            <\/div>\n        <\/div>\n\n        <!-- Panel de debug -->\n        <div id=\"debugPanel\" class=\"events-debug\">\n            <div id=\"debugInfo\"><\/div>\n        <\/div>\n\n        <!-- Mensaje de carga -->\n        <div id=\"loadingContainer\" class=\"events-loading\" style=\"display: none;\">\n            Cargando eventos...\n        <\/div>\n\n        <!-- Mensaje de error -->\n        <div id=\"errorContainer\" class=\"events-error\" style=\"display: none;\">\n            Error al cargar eventos. <button onclick=\"recargarDatos()\">Reintentar<\/button>\n        <\/div>\n\n        <div class=\"events-calendario-grid\" id=\"calendarioGrid\">\n            <!-- Los d\u00edas de la semana -->\n            <div class=\"events-dia-semana\">DOMINGO<\/div>\n            <div class=\"events-dia-semana\">LUNES<\/div>\n            <div class=\"events-dia-semana\">MARTES<\/div>\n            <div class=\"events-dia-semana\">MI\u00c9RCOLES<\/div>\n            <div class=\"events-dia-semana\">JUEVES<\/div>\n            <div class=\"events-dia-semana\">VIERNES<\/div>\n            <div class=\"events-dia-semana\">S\u00c1BADO<\/div>\n        <\/div>\n    <\/div>\n\n    <!-- Modal para detalles del evento -->\n    <div id=\"eventoModal\" class=\"events-modal\">\n        <div class=\"events-modal-content\" id=\"modalContent\">\n            <div class=\"events-modal-header\" onclick=\"ampliarImagen(document.getElementById('modalImagen').src, document.getElementById('modalTitulo').textContent)\">\n                <img decoding=\"async\" id=\"modalImagen\" class=\"events-modal-imagen\" src=\"\" alt=\"Imagen del evento\">\n                <div class=\"events-modal-overlay\"><\/div>\n                <span class=\"events-close\" onclick=\"cerrarModal()\">&times;<\/span>\n            <\/div>\n            <div class=\"events-modal-body\">\n                <h2 id=\"modalTitulo\" class=\"events-modal-titulo\"><\/h2>\n                <div id=\"modalDetalle\" class=\"events-modal-detalle\"><\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <!-- Lightbox mejorado para imagen ampliada -->\n    <div id=\"lightboxModal\" class=\"events-lightbox\">\n        <span class=\"events-lightbox-close\" onclick=\"cerrarLightbox()\">&times;<\/span>\n        <img decoding=\"async\" id=\"lightboxImagen\" class=\"events-lightbox-content\" src=\"\" alt=\"Imagen ampliada\">\n        <div id=\"lightboxInfo\" class=\"events-lightbox-info\">Click en cualquier lugar para cerrar<\/div>\n    <\/div>\n\n    <script>\n        \/\/ ===== CONFIGURACI\u00d3N DE LA API =====\n        const API_CONFIG = {\n            \/\/ \ud83d\udd27 CAMBIAR ESTA URL POR TU SERVIDOR DJANGO\n            BASE_URL: 'https:\/\/sirm.ciudadmujer.gob.hn\/api\/api',  \/\/ \u2190 MODIFICAR AQU\u00cd\n            CCM_ID: 6  \/\/ \ud83c\udfe2 ID del Centro Ciudad Mujer fijo\n        };\n        \/\/ === NUEVO: IDs reales de cada m\u00f3dulo en su API (ajuste si difieren) ===\nconst MODULO_KEYS_ORDERED = ['MAE','MSSR','MAPRODEM','MAA','MEC','MAI'];\nconst MODULO_IDS_ORDERED  = [ 5,    3,      1,         2,    6,    7  ];\n        \/\/ Filtro actual (null = todos)\n        let filtroModuloId = null;\n        let filtroModuloClave = null; \/\/ opcional para debug\/etiqueta\n        \/\/ ===== VARIABLES GLOBALES =====\n        let mesActual, a\u00f1oActual;\n        let eventosData = {}; \/\/ Se llenar\u00e1 desde la API\n        let calendariosCargados = false;\n        let debugMode = false;\n        let rawApiData = null; \/\/ Para debug\n\n        const nombresMeses = [\n            'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio',\n            'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'\n        ];\n\n        \/\/ ===== FUNCIONES DE DEBUG =====\n        function toggleDebug() {\n            debugMode = !debugMode;\n            const panel = document.getElementById('debugPanel');\n            panel.classList.toggle('show', debugMode);\n            \n            if (debugMode && rawApiData) {\n                updateDebugInfo();\n            }\n        }\n\n        function updateDebugInfo() {\n            if (!debugMode) return;\n            \n            const debugInfo = document.getElementById('debugInfo');\n            debugInfo.innerHTML = `\n                <strong>DEBUG INFO:<\/strong><br>\n                <strong>Mes\/A\u00f1o actual:<\/strong> ${mesActual}\/${a\u00f1oActual}<br>\n                <strong>Eventos cargados:<\/strong> ${rawApiData ? rawApiData.total : 'N\/A'}<br>\n                <strong>Estructura eventosData:<\/strong><br>\n                <pre style=\"font-size: 10px; max-height: 200px; overflow-y: auto;\">${JSON.stringify(eventosData, null, 2)}<\/pre>\n                <br>\n                <strong>Raw API Data (primeros 3 eventos):<\/strong><br>\n                <pre style=\"font-size: 10px; max-height: 150px; overflow-y: auto;\">${rawApiData ? JSON.stringify(rawApiData.calendarios.slice(0, 3), null, 2) : 'N\/A'}<\/pre>\n            `;\n        }\n\n        \/\/ ===== FUNCIONES DE API =====\n            async function cargarEventosDesdeAPI(moduloId = null) {\n                mostrarLoading(true);\n\n                try {\n                    \/\/ Use el \u00faltimo filtro si no se pasa expl\u00edcito\n                    const idModulo = moduloId ?? filtroModuloId;\n\n                    let url = `${API_CONFIG.BASE_URL}\/calendarios\/?ccm_id=${API_CONFIG.CCM_ID}`;\n                    if (idModulo) url += `&modulo_id=${idModulo}`;\n\n                    console.log(`\ud83d\udce1 URL de la API: ${url}`);\n\n                    const response = await fetch(url);\n                    if (!response.ok) throw new Error(`HTTP ${response.status}: ${response.statusText}`);\n\n                    const data = await response.json();\n                    rawApiData = data;\n\n                    if (data.error) throw new Error(data.mensaje || 'Error desconocido');\n\n                    console.log(`\u2705 ${data.total} eventos cargados correctamente (filtro modulo_id=${idModulo ?? 'TODOS'})`);\n\n                    \/\/ Convertir a estructura interna\n                    eventosData = convertirEventosAPI(data.calendarios || []);\n                    calendariosCargados = true;\n\n                    mostrarLoading(false);\n                    generarCalendario();\n\n                    if (debugMode) updateDebugInfo();\n                } catch (error) {\n                    console.error('\u274c Error cargando eventos:', error);\n                    mostrarError(`Error al cargar eventos: ${error.message}`);\n                    mostrarLoading(false);\n                }\n            }\n\/\/ === NUEVO: aplicar filtro por m\u00f3dulo (por clave 'MAE','MSSR',...) ===\nfunction aplicarFiltroModulo(modClave) {\n    const clave = (modClave || '').toUpperCase();\n    const moduloId = MODULO_IDS[clave] || null;\n\n    filtroModuloClave = moduloId ? clave : null;\n    filtroModuloId = moduloId;\n\n    \/\/ UI opcional: marcar activo\n    document.querySelectorAll('.mod-trigger').forEach(el => el.classList.remove('is-active'));\n    const activo = document.querySelector(`.mod-trigger.mod-${clave}`);\n    if (activo) activo.classList.add('is-active');\n\n    \/\/ Recargar datos de la API con el filtro\n    cargarEventosDesdeAPI(moduloId);\n}\n\n\/\/ === NUEVO: limpiar filtro (volver a \"Todos\") ===\nfunction limpiarFiltroModulo() {\n    filtroModuloId = null;\n    filtroModuloClave = null;\n    document.querySelectorAll('.mod-trigger').forEach(el => el.classList.remove('is-active'));\n    cargarEventosDesdeAPI(null);\n}\n\/\/ === NUEVO: listeners para los \u00edconos de m\u00f3dulo ===\nfunction wireModuloTriggers() {\n  \/\/ Selecciona los \"gatillos\" en el MISMO orden en que aparecen\n  const triggers = Array.from(document.querySelectorAll('.mod-trigger'));\n  if (!triggers.length) {\n    console.warn('No hay .mod-trigger en la p\u00e1gina.');\n    return;\n  }\n\n  \/\/ Por si Elementor envuelve la imagen, a\u00f1adimos delegaci\u00f3n al contenedor\n  triggers.forEach((el, idx) => {\n    el.addEventListener('click', () => {\n      \/\/ idx es la posici\u00f3n visual del \u00edcono clickeado\n      const moduloId   = MODULO_IDS_ORDERED[idx];\n      const moduloClave = MODULO_KEYS_ORDERED[idx];\n\n      if (!moduloId) {\n        console.warn(`No tengo ID para el trigger #${idx}. Verifique MODULO_IDS_ORDERED.`);\n        return;\n      }\n\n      console.log(`\ud83d\udd04 Filtro por posici\u00f3n #${idx}: ${moduloClave} \u2192 modulo_id=${moduloId}`);\n\n      \/\/ Actualiza variables globales y recarga\n      filtroModuloClave = moduloClave;\n      filtroModuloId    = moduloId;\n\n      \/\/ UI opcional: marcar activo\n      triggers.forEach(t => t.classList.remove('is-active'));\n      el.classList.add('is-active');\n\n      cargarEventosDesdeAPI(moduloId);\n    });\n  });\n}\n\n\n        function convertirEventosAPI(calendarios) {\n            console.log('\ud83d\udd04 Convirtiendo', calendarios.length, 'calendarios al formato del calendario');\n            \n            const eventos = {};\n            let procesados = 0;\n            let sinFecha = 0;\n            \n            calendarios.forEach((calendario, index) => {\n                console.log(`\ud83d\udcc5 Procesando evento ${index + 1}:`, {\n                    id: calendario.id,\n                    titulo: calendario.titulo,\n                    fecha_evento: calendario.fecha_evento,\n                    fecha_creacion: calendario.fecha_creacion,\n                    activo: calendario.activo\n                });\n                \n                \/\/ Determinar la fecha del evento con manejo correcto de zona horaria\n                let fechaEvento = null;\n                let fechaSource = 'fallback';\n                \n                \/\/ CORRIGIDO: Verificar que fecha_evento no sea cadena vac\u00eda\n                if (calendario.fecha_evento && calendario.fecha_evento.trim() !== '') {\n                    \/\/ Crear fecha local para evitar problemas de zona horaria\n                    const fechaStr = calendario.fecha_evento.trim();\n                    if (fechaStr.includes('T')) {\n                        \/\/ Ya tiene hora, usar directamente\n                        fechaEvento = new Date(fechaStr);\n                    } else {\n                        \/\/ Solo fecha, agregar tiempo local para evitar UTC\n                        const partes = fechaStr.split('-');\n                        if (partes.length === 3) {\n                            const a\u00f1o = parseInt(partes[0]);\n                            const mes = parseInt(partes[1]) - 1; \/\/ Mes base 0\n                            const dia = parseInt(partes[2]);\n                            fechaEvento = new Date(a\u00f1o, mes, dia, 12, 0, 0); \/\/ Mediod\u00eda local\n                            console.log(`\ud83d\udcc5 Fecha convertida: ${fechaStr} -> ${fechaEvento.toLocaleDateString()}`);\n                        } else {\n                            fechaEvento = new Date(fechaStr);\n                        }\n                    }\n                    fechaSource = 'fecha_evento';\n                } else if (calendario.fecha_creacion && calendario.fecha_creacion.trim() !== '') {\n                    const fechaStr = calendario.fecha_creacion.trim();\n                    if (fechaStr.includes('T')) {\n                        fechaEvento = new Date(fechaStr);\n                    } else {\n                        const partes = fechaStr.split('-');\n                        if (partes.length === 3) {\n                            const a\u00f1o = parseInt(partes[0]);\n                            const mes = parseInt(partes[1]) - 1;\n                            const dia = parseInt(partes[2]);\n                            fechaEvento = new Date(a\u00f1o, mes, dia, 12, 0, 0);\n                        } else {\n                            fechaEvento = new Date(fechaStr);\n                        }\n                    }\n                    fechaSource = 'fecha_creacion';\n                } else {\n                    \/\/ Solo como \u00faltimo recurso usar fecha actual\n                    fechaEvento = new Date();\n                    fechaSource = 'fecha_actual';\n                    sinFecha++;\n                }\n                \n                \/\/ Verificar que la fecha sea v\u00e1lida\n                if (isNaN(fechaEvento.getTime())) {\n                    console.warn(`\u26a0\ufe0f Fecha inv\u00e1lida para evento ${calendario.id}, usando fecha actual`);\n                    fechaEvento = new Date();\n                    fechaSource = 'fecha_actual_invalid';\n                    sinFecha++;\n                }\n                \n                const a\u00f1o = fechaEvento.getFullYear();\n                const mes = fechaEvento.getMonth() + 1;\n                const dia = fechaEvento.getDate();\n                \n                console.log(`\ud83d\udcc6 Evento ${calendario.id} asignado a: ${a\u00f1o}-${mes}-${dia} (${fechaSource})`);\n                \n                \/\/ Crear estructura de a\u00f1os\/meses\/d\u00edas si no existe\n                if (!eventos[a\u00f1o]) eventos[a\u00f1o] = {};\n                if (!eventos[a\u00f1o][mes]) eventos[a\u00f1o][mes] = {};\n                if (!eventos[a\u00f1o][mes][dia]) eventos[a\u00f1o][mes][dia] = [];\n                \n                \/\/ Determinar tipo de evento\n                let tipo = 'normal';\n                const titulo = calendario.titulo.toLowerCase();\n                if (titulo.includes('especial') || titulo.includes('graduaci\u00f3n') || titulo.includes('ceremonia')) {\n                    tipo = 'especial';\n                } else if (titulo.includes('taller') || titulo.includes('destacado') || titulo.includes('importante')) {\n                    tipo = 'destacado';\n                }\n                \n                \/\/ Imagen por defecto mejorada\n                const imagen = calendario.imagen_url || 'https:\/\/www.ciudadmujer.gob.hn\/wp-content\/uploads\/2025\/11\/DSC_0878-scaled.jpg';\n                \n                \/\/ Hora formateada o por defecto\n                const hora = calendario.hora_formateada || calendario.hora || '9:00 AM';\n                \n                \/\/ Agregar evento al calendario\n                eventos[a\u00f1o][mes][dia].push({\n                    hora: hora,\n                    titulo: calendario.titulo,\n                    tipo: tipo,\n                    imagen: imagen,\n                    descripcion: calendario.descripcion || 'Evento del Centro Ciudad Mujer',\n                    ccm: calendario.ccm || { nombre: 'CCM', codigo: 'CCM' },\n                    url: calendario.url || '',\n                    id: calendario.id,\n                    activo: calendario.activo,\n                    fechaOriginal: calendario.fecha_evento,\n                    fechaCreacion: calendario.fecha_creacion,\n                    fechaSource: fechaSource\n                });\n                \n                procesados++;\n            });\n            \n            console.log(`\u2705 Eventos convertidos: ${procesados} procesados, ${sinFecha} sin fecha espec\u00edfica`);\n            console.log('\ud83d\udcca Estructura final de eventos:', eventos);\n            \n            return eventos;\n        }\n\n        \/\/ ===== FUNCIONES DE UI =====\n        function mostrarLoading(show) {\n            document.getElementById('loadingContainer').style.display = show ? 'block' : 'none';\n            document.getElementById('calendarioGrid').style.display = show ? 'none' : 'grid';\n        }\n\n        function mostrarError(mensaje) {\n            const errorContainer = document.getElementById('errorContainer');\n            errorContainer.innerHTML = `${mensaje} <button onclick=\"recargarDatos()\">Reintentar<\/button>`;\n            errorContainer.style.display = 'block';\n            document.getElementById('calendarioGrid').style.display = 'none';\n        }\n\n        function ocultarError() {\n            document.getElementById('errorContainer').style.display = 'none';\n            document.getElementById('calendarioGrid').style.display = 'grid';\n        }\n\n        function recargarDatos() {\n            ocultarError();\n            cargarEventosDesdeAPI();\n        }\n\n        \/\/ Obtener fecha actual del sistema\n        function obtenerFechaActual() {\n            const fechaHoy = new Date();\n            mesActual = fechaHoy.getMonth() + 1; \/\/ getMonth() devuelve 0-11, necesitamos 1-12\n            a\u00f1oActual = fechaHoy.getFullYear();\n            \n            console.log(`\ud83d\udcc5 Fecha actual del sistema: ${a\u00f1oActual}-${mesActual}`);\n        }\n\n        function generarCalendario() {\n            console.log(`\ud83d\uddd3\ufe0f Generando calendario para ${nombresMeses[mesActual - 1]} ${a\u00f1oActual}`);\n            \n            const grid = document.getElementById('calendarioGrid');\n            \n            \/\/ Limpiar grid excepto los headers\n            const headers = grid.querySelectorAll('.events-dia-semana');\n            grid.innerHTML = '';\n            headers.forEach(header => grid.appendChild(header));\n\n            \/\/ Actualizar t\u00edtulo del mes\n            document.getElementById('mesActual').textContent = `${nombresMeses[mesActual - 1]} ${a\u00f1oActual}`;\n\n            const primerDia = new Date(a\u00f1oActual, mesActual - 1, 1);\n            const ultimoDia = new Date(a\u00f1oActual, mesActual, 0);\n            const diasEnMes = ultimoDia.getDate();\n            const diaSemanaInicio = primerDia.getDay();\n\n            console.log(`\ud83d\udcca Mes tiene ${diasEnMes} d\u00edas, empezando en d\u00eda ${diaSemanaInicio} de la semana`);\n\n            \/\/ D\u00edas del mes anterior\n            const mesAnterior = mesActual === 1 ? 12 : mesActual - 1;\n            const a\u00f1oMesAnterior = mesActual === 1 ? a\u00f1oActual - 1 : a\u00f1oActual;\n            const ultimoDiaMesAnterior = new Date(a\u00f1oMesAnterior, mesAnterior, 0).getDate();\n\n            for (let i = diaSemanaInicio - 1; i >= 0; i--) {\n                const dia = ultimoDiaMesAnterior - i;\n                crearCeldaDia(dia, 'events-mes-anterior', a\u00f1oMesAnterior, mesAnterior);\n            }\n\n            \/\/ D\u00edas del mes actual\n            for (let dia = 1; dia <= diasEnMes; dia++) {\n                crearCeldaDia(dia, 'events-mes-actual', a\u00f1oActual, mesActual);\n            }\n\n            \/\/ D\u00edas del mes siguiente\n            const celdasUsadas = diaSemanaInicio + diasEnMes;\n            const celdasRestantes = 42 - celdasUsadas; \/\/ 6 semanas \u00d7 7 d\u00edas\n            const mesSiguiente = mesActual === 12 ? 1 : mesActual + 1;\n            const a\u00f1oMesSiguiente = mesActual === 12 ? a\u00f1oActual + 1 : a\u00f1oActual;\n\n            for (let dia = 1; dia <= celdasRestantes; dia++) {\n                crearCeldaDia(dia, 'events-mes-siguiente', a\u00f1oMesSiguiente, mesSiguiente);\n            }\n\n            \/\/ Actualizar debug si est\u00e1 activo\n            if (debugMode) {\n                updateDebugInfo();\n            }\n        }\n\n        function crearCeldaDia(dia, tipoMes, a\u00f1o, mes) {\n            const celda = document.createElement('div');\n            celda.className = `events-dia-celda ${tipoMes}`;\n            \n            \/\/ Marcar el d\u00eda actual basado en la fecha real del sistema\n            const hoy = new Date();\n            if (a\u00f1o === hoy.getFullYear() && mes === hoy.getMonth() + 1 && dia === hoy.getDate()) {\n                celda.classList.add('events-hoy');\n            }\n\n            const numeroDia = document.createElement('div');\n            numeroDia.className = 'events-dia-numero';\n            numeroDia.textContent = dia;\n            celda.appendChild(numeroDia);\n\n            \/\/ Agregar eventos si existen\n            let eventosEncontrados = 0;\n            if (eventosData[a\u00f1o] && eventosData[a\u00f1o][mes] && eventosData[a\u00f1o][mes][dia]) {\n                const eventosDelDia = eventosData[a\u00f1o][mes][dia];\n                eventosEncontrados = eventosDelDia.length;\n                \n                console.log(`\ud83d\udcc5 D\u00eda ${a\u00f1o}-${mes}-${dia}: ${eventosEncontrados} eventos`);\n                \n                eventosDelDia.forEach((evento, index) => {\n                    console.log(`  \ud83d\udccc Evento ${index + 1}:`, evento.titulo, `(${evento.fechaSource})`);\n                    \n                    const eventoDiv = document.createElement('div');\n                    eventoDiv.className = `events-evento events-${evento.tipo}`;\n                    \n                    eventoDiv.innerHTML = `\n                        <img decoding=\"async\" src=\"${evento.imagen}\" alt=\"Evento\" class=\"events-evento-imagen\" onerror=\"this.src='https:\/\/images.unsplash.com\/photo-1556761175-b413da4baf72?w=400&h=300&fit=crop'\">\n                        <div class=\"events-evento-info\">\n                            <span class=\"events-evento-hora\">${evento.hora}<\/span>\n                            <span class=\"events-evento-titulo\">${evento.titulo}<\/span>\n                        <\/div>\n                    `;\n                    \n                    eventoDiv.onclick = () => mostrarDetalleEvento(evento);\n                    celda.appendChild(eventoDiv);\n                });\n            }\n\n            \/\/ Si es el mes actual y es en debug mode, mostrar informaci\u00f3n adicional\n            if (debugMode && tipoMes === 'events-mes-actual') {\n                celda.title = `${a\u00f1o}-${mes}-${dia}: ${eventosEncontrados} eventos`;\n            }\n\n            document.getElementById('calendarioGrid').appendChild(celda);\n        }\n\n        function cambiarMes(direccion) {\n            mesActual += direccion;\n            if (mesActual > 12) {\n                mesActual = 1;\n                a\u00f1oActual++;\n            } else if (mesActual < 1) {\n                mesActual = 12;\n                a\u00f1oActual--;\n            }\n            \n            console.log(`\ud83d\udd04 Cambiando a: ${nombresMeses[mesActual - 1]} ${a\u00f1oActual}`);\n            generarCalendario();\n        }\n\n        \/\/ Nueva funci\u00f3n para ir al mes actual\n        function irAlMesActual() {\n            console.log('\ud83c\udfe0 Volviendo al mes actual');\n            obtenerFechaActual();\n            generarCalendario();\n        }\n\n        function buscarEventos() {\n            const termino = document.getElementById('buscarInput').value.toLowerCase();\n            const eventos = document.querySelectorAll('.events-evento');\n            \n            console.log(`\ud83d\udd0d Buscando eventos con t\u00e9rmino: \"${termino}\"`);\n            \n            eventos.forEach(evento => {\n                const texto = evento.textContent.toLowerCase();\n                if (termino === '' || texto.includes(termino)) {\n                    evento.style.display = 'flex';\n                    evento.style.opacity = '1';\n                } else {\n                    evento.style.opacity = '0.3';\n                }\n            });\n        }\n\n        \/\/ MODAL SUPER ROBUSTO PARA WORDPRESS\n        function mostrarDetalleEvento(evento) {\n            console.log('\ud83d\udcd6 Mostrando detalle del evento:', evento);\n            \n            \/\/ Llenar datos del modal\n            document.getElementById('modalTitulo').textContent = evento.titulo;\n            document.getElementById('modalImagen').src = evento.imagen;\n            document.getElementById('modalDetalle').innerHTML = `\n                <strong>Horario:<\/strong> ${evento.hora}<br><br>\n                <strong>Centro:<\/strong> ${evento.ccm ? evento.ccm.nombre : 'Centro Ciudad Mujer'}<br><br>\n                <strong>Tipo:<\/strong> ${evento.tipo.charAt(0).toUpperCase() + evento.tipo.slice(1)}<br><br>\n                <strong>Descripci\u00f3n:<\/strong> ${evento.descripcion}<br><br>\n                ${evento.url ? `<strong>M\u00e1s informaci\u00f3n:<\/strong> <a href=\"${evento.url}\" target=\"_blank\" style=\"color: #17a2b8;\">Ver detalles<\/a><br><br>` : ''}\n                <strong>ID del evento:<\/strong> ${evento.id || 'N\/A'}<br>\n                <strong>Estado:<\/strong> ${evento.activo ? 'Activo' : 'Inactivo'}<br><br>\n                ${debugMode ? `\n                    <strong>DEBUG INFO:<\/strong><br>\n                    <strong>Fecha original:<\/strong> ${evento.fechaOriginal || 'N\/A'}<br>\n                    <strong>Fecha creaci\u00f3n:<\/strong> ${evento.fechaCreacion || 'N\/A'}<br>\n                    <strong>Fuente de fecha:<\/strong> ${evento.fechaSource}<br><br>\n                ` : ''}\n                <em>\ud83d\udca1 Tip: Haz click en la imagen para verla en tama\u00f1o completo<\/em>\n            `;\n            \n            \/\/ Mostrar modal con clase especial\n            const modal = document.getElementById('eventoModal');\n            modal.classList.add('events-show');\n            \n            \/\/ Bloquear scroll del body\n            document.body.classList.add('events-modal-open');\n            \n            \/\/ Asegurar que est\u00e9 en el top\n            setTimeout(() => {\n                window.scrollTo(0, 0);\n            }, 50);\n        }\n\n        function cerrarModal() {\n            const modal = document.getElementById('eventoModal');\n            modal.classList.remove('events-show');\n            document.body.classList.remove('events-modal-open');\n        }\n\n        \/\/ Funci\u00f3n mejorada para ampliar imagen\n        function ampliarImagen(src, titulo = '') {\n            document.getElementById('lightboxImagen').src = src;\n            document.getElementById('lightboxInfo').textContent = titulo || 'Click en cualquier lugar para cerrar';\n            const lightbox = document.getElementById('lightboxModal');\n            lightbox.classList.add('events-show');\n            \n            \/\/ Bloquear scroll tambi\u00e9n en lightbox\n            document.body.classList.add('events-modal-open');\n        }\n\n        function cerrarLightbox() {\n            const lightbox = document.getElementById('lightboxModal');\n            lightbox.classList.remove('events-show');\n            document.body.classList.remove('events-modal-open');\n        }\n\n        \/\/ Cerrar modal al hacer clic fuera (mejorado para WordPress)\n        document.addEventListener('click', function(event) {\n            const modal = document.getElementById('eventoModal');\n            const lightbox = document.getElementById('lightboxModal');\n            \n            if (event.target === modal) {\n                cerrarModal();\n            }\n            \n            if (event.target === lightbox) {\n                cerrarLightbox();\n            }\n        });\n\n        \/\/ Cerrar modales con tecla Escape\n        document.addEventListener('keydown', function(event) {\n            if (event.key === 'Escape') {\n                cerrarModal();\n                cerrarLightbox();\n            }\n        });\n\n        \/\/ INICIALIZACI\u00d3N AUTOM\u00c1TICA CON FECHA ACTUAL\n        async function inicializarCalendario() {\n            console.log('\ud83d\ude80 Inicializando calendario...');\n            obtenerFechaActual();\n            \/\/ Conectar filtros por m\u00f3dulo\n            wireModuloTriggers();\n            \/\/ Cargar eventos desde la API\n            await cargarEventosDesdeAPI();\n        }\n\n        \/\/ B\u00fasqueda en tiempo real\n        document.getElementById('buscarInput').addEventListener('input', buscarEventos);\n\n        \/\/ Inicializar al cargar la p\u00e1gina\n        window.addEventListener('load', function() {\n            console.log('\ud83c\udf10 P\u00e1gina cargada completamente');\n            \n            \/\/ Asegurar que no hay conflictos con WordPress\n            const adminBar = document.getElementById('wpadminbar');\n            if (adminBar) {\n                adminBar.style.zIndex = '999998';\n            }\n            \n            \/\/ Inicializar calendario con fecha actual\n            if (!calendariosCargados) {\n                inicializarCalendario();\n            }\n        });\n\n        \/\/ Tambi\u00e9n inicializar si DOMContentLoaded se dispara antes\n        document.addEventListener('DOMContentLoaded', function() {\n            console.log('\ud83d\udcc4 DOM cargado');\n            if (!calendariosCargados) {\n                inicializarCalendario();\n            }\n        });\n    <\/script>\n<script>\n(function () {\n  const TARGET_ID = \"tituloMesSuperior\"; \/\/ su encabezado\n  const SOURCE_ID = \"mesActual\";         \/\/ el t\u00edtulo del calendario\n\n  function getDisplayNode() {\n    const t = document.getElementById(TARGET_ID);\n    if (!t) return null;\n    \/\/ Elementor suele usar .elementor-heading-title; si no existe, usamos el primer span o el propio contenedor\n    return t.querySelector(\".elementor-heading-title\") || t.querySelector(\"span\") || t;\n  }\n\n  function apply() {\n    const src = document.getElementById(SOURCE_ID);\n    const dst = getDisplayNode();\n    if (!src || !dst) return;\n    dst.textContent = (src.textContent || \"\").trim();\n  }\n\n  function init() {\n    apply();\n\n    \/\/ Observar cambios del texto del calendario\n    const src = document.getElementById(SOURCE_ID);\n    if (src) {\n      new MutationObserver(apply).observe(src, { childList: true, characterData: true, subtree: true });\n    }\n\n    \/\/ Reaplicar al usar flechas o bot\u00f3n HOY\n    document.addEventListener(\"click\", (e) => {\n      if (e.target.closest(\".events-btn-nav, .events-btn-hoy\")) {\n        setTimeout(apply, 0);\n      }\n    });\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", init);\n  } else {\n    init();\n  }\n  window.addEventListener(\"load\", apply);\n})();\n<\/script>\n\n\n\n\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<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-aaea735 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"aaea735\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d1a7f82\" data-id=\"d1a7f82\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-d649f48 elementor-widget elementor-widget-html\" data-id=\"d649f48\" data-element_type=\"widget\" data-e-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\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Carousel de Boletines Informativos<\/title>\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/gsap\/3.12.2\/gsap.min.js\"><\/script>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n        }\n\n        body {\n            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n        \n            min-height: 100vh;\n        }\n\n        .boletin-carousel-container {\n            width: 100%;\n            max-width: 1200px;\n            margin: 2rem auto;\n            padding: 2rem;\n            position: relative;\n            overflow: visible;\n        }\n\n        .carousel-wrapper {\n            position: relative;\n            width: 100%;\n            perspective: 1000px;\n        }\n\n        .carousel-track {\n            display: flex;\n            gap: 2rem;\n            transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);\n            padding: 1rem 0;\n        }\n\n        .boletin-card {\n            width: 350px;\n            height: 450px;\n            flex-shrink: 0;\n            position: relative;\n            border-radius: 24px;\n            background: rgba(255, 255, 255, 0.95);\n            backdrop-filter: blur(20px);\n            border: 1px solid rgba(255, 255, 255, 0.2);\n            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);\n            overflow: hidden;\n            cursor: pointer;\n            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n        }\n\n        .boletin-card:hover {\n            transform: translateY(-8px) scale(1.02);\n            box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);\n        }\n\n        .card-image-container {\n            width: 100%;\n            height: 60%;\n            position: relative;\n            overflow: hidden;\n            border-radius: 20px 20px 0 0;\n        }\n\n        .card-images-carousel {\n            display: flex;\n            transition: transform 0.5s ease;\n            height: 100%;\n        }\n\n        .card-image {\n            min-width: 100%;\n            height: 100%;\n            position: relative;\n        }\n\n        .card-image img {\n            width: 100%;\n            height: 100%;\n            object-fit: cover;\n            filter: brightness(1.1) contrast(1.1);\n        }\n\n        .card-image::after {\n            content: '';\n            position: absolute;\n            bottom: 0;\n            left: 0;\n            right: 0;\n            height: 50%;\n            background: linear-gradient(transparent, rgba(0, 0, 0, 0.4));\n            pointer-events: none;\n        }\n\n        .image-nav {\n            position: absolute;\n            top: 50%;\n            transform: translateY(-50%);\n            width: 30px;\n            height: 30px;\n            background: rgba(0, 0, 0, 0.7);\n            color: white;\n            border: none;\n            border-radius: 50%;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            opacity: 0;\n            transition: all 0.3s ease;\n            z-index: 10;\n            font-size: 14px;\n            font-weight: bold;\n            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);\n        }\n\n        .boletin-card:hover .image-nav {\n            opacity: 1;\n        }\n\n        .modal-carousel .image-nav {\n            opacity: 1;\n        }\n\n        .image-nav.prev {\n            left: 10px;\n        }\n\n        .image-nav.next {\n            right: 10px;\n        }\n\n        .image-nav:hover {\n            background: rgba(0, 0, 0, 0.9);\n            transform: translateY(-50%) scale(1.1);\n            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);\n        }\n\n        .image-indicators {\n            position: absolute;\n            bottom: 10px;\n            left: 50%;\n            transform: translateX(-50%);\n            display: flex;\n            gap: 8px;\n            z-index: 10;\n        }\n\n        .image-indicator {\n            width: 8px;\n            height: 8px;\n            border-radius: 50%;\n            background: rgba(255, 255, 255, 0.6);\n            cursor: pointer;\n            transition: all 0.3s ease;\n            border: 1px solid rgba(0, 0, 0, 0.3);\n        }\n\n        .image-indicator.active {\n            background: rgba(255, 255, 255, 1);\n            transform: scale(1.2);\n            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n        }\n\n        .card-content {\n            padding: 1.5rem;\n            height: 40%;\n            display: flex;\n            flex-direction: column;\n            justify-content: space-between;\n        }\n\n        .card-title {\n            font-size: 1.2rem;\n            font-weight: 600;\n            color: #333;\n            line-height: 1.4;\n            margin-bottom: 0.5rem;\n        }\n\n        .card-subtitle {\n            font-size: 0.9rem;\n            color: #666;\n            margin-bottom: 1rem;\n            display: -webkit-box;\n            -webkit-line-clamp: 2;\n            -webkit-box-orient: vertical;\n            overflow: hidden;\n        }\n\n        .card-button {\n            align-self: flex-start;\n            padding: 0.8rem 1.5rem;\n            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n            color: white;\n            border: none;\n            border-radius: 12px;\n            font-weight: 500;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);\n        }\n\n        .card-button:hover {\n            transform: translateY(-2px);\n            box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);\n        }\n\n        .social-badge {\n            position: absolute;\n            top: 15px;\n            right: 15px;\n            padding: 0.5rem;\n            border-radius: 12px;\n            color: white;\n            font-size: 0.8rem;\n            font-weight: 500;\n            backdrop-filter: blur(10px);\n            z-index: 5;\n        }\n\n        .social-facebook { background: rgba(24, 119, 242, 0.9); }\n        .social-instagram { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }\n        .social-twitter { background: rgba(29, 161, 242, 0.9); }\n        .social-linkedin { background: rgba(0, 119, 181, 0.9); }\n        .social-youtube { background: rgba(255, 0, 0, 0.9); }\n        .social-tiktok { background: rgba(0, 0, 0, 0.9); }\n        .social-otro { background: rgba(108, 117, 125, 0.9); }\n\n        .carousel-nav {\n            display: flex;\n            justify-content: center;\n            gap: 1rem;\n            margin-top: 2rem;\n        }\n\n        .nav-btn {\n            width: 50px;\n            height: 50px;\n            border: none;\n            border-radius: 50%;\n            background: rgba(255, 255, 255, 0.9);\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            font-size: 1.2rem;\n            color: #333;\n            transition: all 0.3s ease;\n            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);\n        }\n\n        .nav-btn:hover:not(:disabled) {\n            transform: scale(1.1);\n            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);\n        }\n\n        .nav-btn:disabled {\n            opacity: 0.5;\n            cursor: not-allowed;\n        }\n\n        \/* Modal Styles - Optimizado para WordPress *\/\n        .modal-overlay-boletines {\n            display: none !important;\n            position: fixed !important;\n            z-index: 999999 !important;\n            left: 0 !important;\n            top: 0 !important;\n            width: 100vw !important;\n            height: 100vh !important;\n            background-color: rgba(0, 0, 0, 0.8) !important;\n            backdrop-filter: blur(10px) !important;\n            overflow: hidden !important;\n        }\n\n        .modal-overlay-boletines.boletin-show {\n            display: flex !important;\n            align-items: center !important;\n            justify-content: center !important;\n            margin-top: -128px;\n        }\n\n        .modal-content-boletines {\n            background: rgba(255, 255, 255, 0.1) !important;\n            backdrop-filter: blur(30px) !important;\n            border: 1px solid rgba(255, 255, 255, 0.2) !important;\n            border-radius: 20px !important;\n            width: 90% !important;\n            max-width: 600px !important;\n            max-height: 90vh !important;\n            box-shadow: 0 15px 50px rgba(0, 0, 0, 0.3) !important;\n            color: white !important;\n            position: relative !important;\n            margin: 0 !important;\n            padding: 0 !important;\n            overflow: hidden !important;\n            transform: scale(0.7) !important;\n            opacity: 0 !important;\n            transition: all 0.3s ease !important;\n            display: flex !important;\n            flex-direction: column !important;\n        }\n\n        .modal-overlay-boletines.boletin-show .modal-content-boletines {\n            transform: scale(1) !important;\n            opacity: 1 !important;\n        }\n\n        .modal-header-boletines {\n            position: relative !important;\n            height: 200px !important;\n            overflow: hidden !important;\n            border-radius: 20px 20px 0 0 !important;\n            flex-shrink: 0 !important;\n        }\n\n        .modal-close-boletines {\n            color: white !important;\n            font-size: 30px !important;\n            font-weight: bold !important;\n            cursor: pointer !important;\n            background: rgba(255, 0, 0, 0.7) !important;\n            border-radius: 50% !important;\n            width: 45px !important;\n            height: 45px !important;\n            display: flex !important;\n            align-items: center !important;\n            justify-content: center !important;\n            backdrop-filter: blur(10px) !important;\n            border: 2px solid rgba(255, 255, 255, 0.3) !important;\n            transition: all 0.3s ease !important;\n            line-height: 1 !important;\n            pointer-events: auto !important;\n            flex-shrink: 0 !important;\n        }\n\n        .modal-close-boletines:hover {\n            background: rgba(255, 0, 0, 0.9) !important;\n            transform: scale(1.1) !important;\n        }\n\n        .modal-title-boletines {\n            font-size: 24px !important;\n            font-weight: 700 !important;\n            margin-bottom: 15px !important;\n            color: white !important;\n            line-height: 1.3 !important;\n        }\n\n        .modal-subtitle-boletines {\n            font-size: 16px !important;\n            line-height: 1.6 !important;\n            color: rgba(255, 255, 255, 0.9) !important;\n            margin-bottom: 10px !important;\n        }\n\n        .modal-body-boletines {\n            padding: 25px !important;\n            overflow-y: auto !important;\n            max-height: calc(90vh - 200px) !important;\n            flex: 1 !important;\n        }\n\n        .modal-header-image-boletines {\n            width: 100% !important;\n            height: 100% !important;\n            object-fit: cover !important;\n            pointer-events: none !important;\n            position: relative !important;\n            z-index: 1 !important;\n        }\n\n        .modal-images-boletines {\n            margin-bottom: 1rem !important;\n        }\n\n        .modal-carousel-boletines {\n            position: relative !important;\n            border-radius: 12px !important;\n            overflow: hidden !important;\n            max-height: 300px !important;\n            background: rgba(0, 0, 0, 0.3) !important;\n        }\n\n        .modal-images-track-boletines {\n            display: flex !important;\n            transition: transform 0.5s ease !important;\n        }\n\n        .modal-image-boletines {\n            min-width: 100% !important;\n            height: 300px !important;\n            flex-shrink: 0 !important;\n        }\n\n        .modal-image-boletines img {\n            width: 100% !important;\n            height: 100% !important;\n            object-fit: cover !important;\n        }\n\n        .modal-content-text-boletines {\n            font-size: 16px !important;\n            line-height: 1.6 !important;\n            color: rgba(255, 255, 255, 0.95) !important;\n            margin-bottom: 1rem !important;\n        }\n\n        .modal-content-text-boletines h1,\n        .modal-content-text-boletines h2,\n        .modal-content-text-boletines h3 {\n            margin: 1rem 0 0.5rem 0 !important;\n            color: white !important;\n        }\n\n        .modal-content-text-boletines p {\n            margin-bottom: 0.8rem !important;\n        }\n\n        .modal-content-text-boletines ul,\n        .modal-content-text-boletines ol {\n            margin: 0.5rem 0 0.5rem 1.5rem !important;\n        }\n\n        .modal-content-text-boletines strong {\n            color: #17a2b8 !important;\n        }\n\n        .modal-footer-boletines {\n            padding: 15px 25px !important;\n            background: rgba(0, 0, 0, 0.3) !important;\n            display: flex !important;\n            justify-content: space-between !important;\n            align-items: center !important;\n            border-top: 1px solid rgba(255, 255, 255, 0.1) !important;\n            flex-shrink: 0 !important;\n        }\n\n        .social-link {\n            display: inline-flex !important;\n            align-items: center !important;\n            gap: 0.5rem !important;\n            padding: 0.75rem 1.5rem !important;\n            border-radius: 10px !important;\n            color: white !important;\n            text-decoration: none !important;\n            font-weight: 500 !important;\n            transition: all 0.3s ease !important;\n            font-size: 0.9rem !important;\n        }\n\n        .social-link:hover {\n            transform: translateY(-2px) !important;\n            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2) !important;\n            text-decoration: none !important;\n            color: white !important;\n        }\n\n        \/* Estilos espec\u00edficos para WordPress *\/\n        .modal-overlay-boletines * {\n            box-sizing: border-box !important;\n        }\n\n        body.boletin-modal-open {\n            overflow: hidden !important;\n            height: 100vh !important;\n        }\n\n        body.boletin-modal-open #wpadminbar {\n            display: none !important;\n        }\n\n        .boletin-carousel-container * {\n            box-sizing: border-box !important;\n        }\n\n        .boletin-carousel-container {\n            position: relative !important;\n            z-index: 1 !important;\n            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;\n        }\n\n        \/* Responsive mejorado para WordPress *\/\n        @media (max-width: 768px) {\n            .modal-content-boletines {\n                width: 95vw !important;\n                max-height: 90vh !important;\n                margin: 20px !important;\n            }\n\n            .modal-header-boletines {\n                padding: 1.5rem !important;\n            }\n\n            .modal-body-boletines {\n                padding: 1.5rem !important;\n                max-height: calc(90vh - 180px) !important;\n            }\n\n            .modal-title-boletines {\n                font-size: 1.3rem !important;\n            }\n\n            .modal-image-boletines {\n                height: 250px !important;\n            }\n\n            .modal-carousel-boletines {\n                max-height: 250px !important;\n            }\n        }\n\n        .loading-container {\n            display: flex;\n            justify-content: center;\n            align-items: center;\n            height: 400px;\n        }\n\n        .loading-spinner {\n            width: 60px;\n            height: 60px;\n            border: 3px solid rgba(255, 255, 255, 0.3);\n            border-top: 3px solid #667eea;\n            border-radius: 50%;\n            animation: spin 1s linear infinite;\n        }\n\n        @keyframes spin {\n            0% { transform: rotate(0deg); }\n            100% { transform: rotate(360deg); }\n        }\n\n        .error-message {\n            text-align: center;\n            color: #e74c3c;\n            padding: 2rem;\n            background: rgba(231, 76, 60, 0.1);\n            border-radius: 12px;\n            border: 1px solid rgba(231, 76, 60, 0.2);\n        }\n\n        @media (max-width: 768px) {\n            .boletin-carousel-container {\n                padding: 1rem;\n            }\n            \n            .boletin-card {\n                width: 300px;\n                height: 400px;\n            }\n            \n            .modal-content-boletines {\n                margin: 1rem;\n                max-height: calc(100vh - 2rem);\n            }\n        }\n    <\/style>\n<\/head>\n<body>\n    <div class=\"boletin-carousel-container\" id=\"carousel-section\">\n        <div class=\"carousel-wrapper\">\n            <div id=\"carousel-content\">\n                <div class=\"loading-container\">\n                    <div class=\"loading-spinner\"><\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <!-- Modal -->\n    <div class=\"modal-overlay-boletines\" id=\"modal-boletines\">\n        <div class=\"modal-content-boletines\">\n            <div class=\"modal-header-boletines\">\n                <img decoding=\"async\" id=\"modal-header-image-boletines\" class=\"modal-header-image-boletines\" src=\"\" alt=\"Imagen del bolet\u00edn\">\n            <\/div>\n            <div class=\"modal-body-boletines\">\n                <h2 class=\"modal-title-boletines\" id=\"modal-title-boletines\"><\/h2>\n                <p class=\"modal-subtitle-boletines\" id=\"modal-subtitle-boletines\"><\/p>\n                <div class=\"modal-images-boletines\" id=\"modal-images-boletines\"><\/div>\n                <div class=\"modal-content-text-boletines\" id=\"modal-content-boletines\"><\/div>\n            <\/div>\n            <div class=\"modal-footer-boletines\" id=\"modal-footer-boletines\"><\/div>\n        <\/div>\n    <\/div>\n\n    <script>\n        class BoletinCarousel {\n            constructor() {\n                this.boletines = [];\n                this.currentIndex = 0;\n                this.cardWidth = 350;\n                this.gap = 32;\n                this.visibleCards = this.getVisibleCards();\n                this.cardImageIndex = {};\n                this.modalImageIndex = 0;\n                \n                this.init();\n                window.addEventListener('resize', () => {\n                    this.visibleCards = this.getVisibleCards();\n                    this.updateCarousel();\n                });\n                \n                \/\/ Hacer disponible globalmente desde el constructor\n                window.boletinCarousel = this;\n            }\n\n            getVisibleCards() {\n                const containerWidth = document.querySelector('.boletin-carousel-container').offsetWidth;\n                return Math.floor((containerWidth - 64) \/ (this.cardWidth + this.gap)) || 1;\n            }\n\n            async init() {\n                try {\n                    await this.fetchBoletines();\n                    this.renderCarousel();\n                    this.setupEventListeners();\n                    this.animateEntrance();\n                } catch (error) {\n                    this.renderError(error.message);\n                }\n            }\n\n            async fetchBoletines() {\n                try {\n                    const response = await fetch('https:\/\/sirm.ciudadmujer.gob.hn\/api\/boletines\/?idccm=6', {\n                        method: 'GET',\n                        headers: {\n                            'Content-Type': 'application\/json',\n                            'Origin': window.location.origin\n                        }\n                    });\n\n                    if (!response.ok) {\n                        throw new Error(`HTTP error! status: ${response.status}`);\n                    }\n\n                    const data = await response.json();\n                    \n                    if (data.estado === 1 && data.boletines) {\n                        this.boletines = data.boletines.map(boletin => ({\n                            ...boletin,\n                            imagenes: boletin.imagenes || []\n                        }));\n                    } else {\n                        throw new Error('No se encontraron boletines disponibles');\n                    }\n                } catch (error) {\n                    console.error('Error fetching boletines:', error);\n                    throw error;\n                }\n            }\n\n            renderCarousel() {\n                const container = document.getElementById('carousel-content');\n                \n                if (this.boletines.length === 0) {\n                    container.innerHTML = '<div class=\"error-message\">No hay boletines disponibles<\/div>';\n                    return;\n                }\n\n                const carouselHTML = `\n                    <div class=\"carousel-track\" id=\"carousel-track\">\n                        ${this.boletines.map((boletin, index) => this.createCardHTML(boletin, index)).join('')}\n                    <\/div>\n                    ${this.boletines.length > this.visibleCards ? this.createNavigationHTML() : ''}\n                `;\n\n                container.innerHTML = carouselHTML;\n                \n                \/\/ Inicializar \u00edndices de im\u00e1genes para cada card\n                this.boletines.forEach((boletin, index) => {\n                    this.cardImageIndex[index] = 0;\n                });\n\n                \/\/ Configurar event listeners para las im\u00e1genes despu\u00e9s de renderizar\n                this.setupImageEventListeners();\n            }\n\n            createCardHTML(boletin, index) {\n                const images = boletin.imagenes && boletin.imagenes.length > 0\n                    ? boletin.imagenes\n                    : [{ url: 'https:\/\/placehold.co\/350x270\/667eea\/white?text=Sin+Imagen', descripcion: 'Sin imagen' }];\n\n                const socialBadge = boletin.tipo_red_social ? \n                    `<div class=\"social-badge social-${boletin.tipo_red_social}\">${this.getSocialIcon(boletin.tipo_red_social)} ${this.getSocialName(boletin.tipo_red_social)}<\/div>` \n                    : '';\n\n                return `\n                    <div class=\"boletin-card\" data-index=\"${index}\">\n                        ${socialBadge}\n                        <div class=\"card-image-container\">\n                            <div class=\"card-images-carousel\" id=\"card-carousel-${index}\">\n                                ${images.map((img, imgIndex) => `\n                                    <div class=\"card-image\">\n                                        <img decoding=\"async\" src=\"${img.url ? `https:\/\/sirm.ciudadmujer.gob.hn${img.url}` : img.url}\" \n                                             alt=\"${img.descripcion || boletin.titulo}\" \n                                             onerror=\"this.src='https:\/\/placehold.co\/320x240?text=Sin+Imagen'\">\n                                    <\/div>\n                                `).join('')}\n                            <\/div>\n                            ${images.length > 1 ? `\n                                <button class=\"image-nav prev\" data-card=\"${index}\" data-action=\"prev\">\u2039<\/button>\n                                <button class=\"image-nav next\" data-card=\"${index}\" data-action=\"next\">\u203a<\/button>\n                                <div class=\"image-indicators\">\n                                    ${images.map((_, imgIndex) => `\n                                        <div class=\"image-indicator ${imgIndex === 0 ? 'active' : ''}\" \n                                             data-card=\"${index}\" data-image=\"${imgIndex}\"><\/div>\n                                    `).join('')}\n                                <\/div>\n                            ` : ''}\n                        <\/div>\n                        <div class=\"card-content\">\n                            <h3 class=\"card-title\">${boletin.titulo || boletin.nombre_boletin}<\/h3>\n                            <p class=\"card-subtitle\">${boletin.nombre_boletin !== boletin.titulo ? boletin.nombre_boletin : ''}<\/p>\n                            <button class=\"card-button\" data-modal=\"${index}\">\n                                Ver Contenido\n                            <\/button>\n                        <\/div>\n                    <\/div>\n                `;\n            }\n\n            setupImageEventListeners() {\n                \/\/ Event listeners para navegaci\u00f3n de im\u00e1genes en cards\n                document.querySelectorAll('.image-nav').forEach(btn => {\n                    btn.addEventListener('click', (e) => {\n                        e.stopPropagation();\n                        const cardIndex = parseInt(btn.getAttribute('data-card'));\n                        const action = btn.getAttribute('data-action');\n                        \n                        if (action === 'prev') {\n                            this.prevCardImage(cardIndex);\n                        } else if (action === 'next') {\n                            this.nextCardImage(cardIndex);\n                        }\n                    });\n                });\n\n                \/\/ Event listeners para indicadores de im\u00e1genes en cards\n                document.querySelectorAll('.image-indicator').forEach(indicator => {\n                    indicator.addEventListener('click', (e) => {\n                        e.stopPropagation();\n                        const cardIndex = parseInt(indicator.getAttribute('data-card'));\n                        const imageIndex = parseInt(indicator.getAttribute('data-image'));\n                        this.goToCardImage(cardIndex, imageIndex);\n                    });\n                });\n\n                \/\/ Event listeners para botones de modal\n                document.querySelectorAll('.card-button').forEach(btn => {\n                    btn.addEventListener('click', (e) => {\n                        e.stopPropagation();\n                        const modalIndex = parseInt(btn.getAttribute('data-modal'));\n                        this.openModal(modalIndex);\n                    });\n                });\n            }\n\n            createNavigationHTML() {\n                return `\n                    <div class=\"carousel-nav\">\n                        <button class=\"nav-btn\" id=\"prev-btn\" ${this.currentIndex === 0 ? 'disabled' : ''}>\u2039<\/button>\n                        <button class=\"nav-btn\" id=\"next-btn\" ${this.currentIndex >= this.boletines.length - this.visibleCards ? 'disabled' : ''}>\u203a<\/button>\n                    <\/div>\n                `;\n            }\n\n            setupEventListeners() {\n                const prevBtn = document.getElementById('prev-btn');\n                const nextBtn = document.getElementById('next-btn');\n\n                if (prevBtn) prevBtn.addEventListener('click', () => this.previousSlide());\n                if (nextBtn) nextBtn.addEventListener('click', () => this.nextSlide());\n\n                \/\/ Event listener para cerrar modal\n                const closeBtn = document.getElementById('modal-close-btn-boletines');\n                if (closeBtn) {\n                    closeBtn.addEventListener('click', (e) => {\n                        e.preventDefault();\n                        e.stopPropagation();\n                        this.closeModal();\n                    });\n                }\n\n                \/\/ Cerrar modal con ESC\n                document.addEventListener('keydown', (e) => {\n                    if (e.key === 'Escape') {\n                        const modal = document.getElementById('modal-boletines');\n                        if (modal && modal.classList.contains('boletin-show')) {\n                            this.closeModal();\n                        }\n                    }\n                });\n\n                \/\/ Cerrar modal al hacer click en el overlay\n                const modal = document.getElementById('modal-boletines');\n                if (modal) {\n                    modal.addEventListener('click', (e) => {\n                        if (e.target === modal) {\n                            this.closeModal();\n                        }\n                    });\n                }\n            }\n\n            nextSlide() {\n                if (this.currentIndex < this.boletines.length - this.visibleCards) {\n                    this.currentIndex++;\n                    this.updateCarousel();\n                }\n            }\n\n            previousSlide() {\n                if (this.currentIndex > 0) {\n                    this.currentIndex--;\n                    this.updateCarousel();\n                }\n            }\n\n            updateCarousel() {\n                const track = document.getElementById('carousel-track');\n                const translateX = -(this.currentIndex * (this.cardWidth + this.gap));\n                \n                gsap.to(track, {\n                    duration: 0.8,\n                    x: translateX,\n                    ease: \"power3.out\"\n                });\n\n                const prevBtn = document.getElementById('prev-btn');\n                const nextBtn = document.getElementById('next-btn');\n\n                if (prevBtn) prevBtn.disabled = this.currentIndex === 0;\n                if (nextBtn) nextBtn.disabled = this.currentIndex >= this.boletines.length - this.visibleCards;\n            }\n\n            prevCardImage(cardIndex) {\n                const boletin = this.boletines[cardIndex];\n                if (!boletin.imagenes || boletin.imagenes.length <= 1) return;\n\n                this.cardImageIndex[cardIndex] = this.cardImageIndex[cardIndex] > 0 \n                    ? this.cardImageIndex[cardIndex] - 1 \n                    : boletin.imagenes.length - 1;\n                \n                this.updateCardImage(cardIndex);\n            }\n\n            nextCardImage(cardIndex) {\n                const boletin = this.boletines[cardIndex];\n                if (!boletin.imagenes || boletin.imagenes.length <= 1) return;\n\n                this.cardImageIndex[cardIndex] = (this.cardImageIndex[cardIndex] + 1) % boletin.imagenes.length;\n                this.updateCardImage(cardIndex);\n            }\n\n            goToCardImage(cardIndex, imageIndex) {\n                this.cardImageIndex[cardIndex] = imageIndex;\n                this.updateCardImage(cardIndex);\n            }\n\n            updateCardImage(cardIndex) {\n                const carousel = document.getElementById(`card-carousel-${cardIndex}`);\n                const container = carousel?.parentElement;\n                const indicators = container?.querySelectorAll('.image-indicator');\n                \n                if (carousel) {\n                    const translateX = -this.cardImageIndex[cardIndex] * 100;\n                    carousel.style.transform = `translateX(${translateX}%)`;\n                }\n\n                if (indicators) {\n                    indicators.forEach((indicator, index) => {\n                        indicator.classList.toggle('active', index === this.cardImageIndex[cardIndex]);\n                    });\n                }\n            }\n\n            openModal(index) {\n                \/\/ Cerrar modal de calendarios si est\u00e1 abierto\n                const calendarioModal = document.getElementById('eventoModal');\n                if (calendarioModal && calendarioModal.classList.contains('events-show')) {\n                    calendarioModal.classList.remove('events-show');\n                    document.body.classList.remove('events-modal-open');\n                }\n\n                const boletin = this.boletines[index];\n                const modal = document.getElementById('modal-boletines');\n\n                \/\/ Imagen principal del header\n                const headerImage = document.getElementById('modal-header-image-boletines');\n                const primeraImagen = boletin.imagenes && boletin.imagenes.length > 0\n                    ? `https:\/\/sirm.ciudadmujer.gob.hn${boletin.imagenes[0].url}`\n                    : 'https:\/\/placehold.co\/600x300\/667eea\/white?text=Sin+Imagen';\n                headerImage.src = primeraImagen;\n\n                \/\/ T\u00edtulo y subt\u00edtulo\n                document.getElementById('modal-title-boletines').textContent = boletin.titulo || boletin.nombre_boletin;\n                document.getElementById('modal-subtitle-boletines').textContent = boletin.nombre_boletin !== boletin.titulo ? boletin.nombre_boletin : '';\n\n                \/\/ Im\u00e1genes adicionales del modal\n                this.renderModalImages(boletin);\n\n                \/\/ Contenido\n                document.getElementById('modal-content-boletines').innerHTML = boletin.contenido_html || '<p>Sin contenido disponible<\/p>';\n\n                \/\/ Footer con enlace social\n                this.renderModalFooter(boletin);\n\n                \/\/ Mostrar modal con clase especial\n                modal.classList.add('boletin-show');\n\n                \/\/ Bloquear scroll del body\n                document.body.classList.add('boletin-modal-open');\n\n                \/\/ Asegurar que est\u00e9 en el top\n                setTimeout(() => {\n                    window.scrollTo(0, 0);\n                }, 50);\n            }\n\n            renderModalImages(boletin) {\n                const container = document.getElementById('modal-images-boletines');\n                const images = boletin.imagenes && boletin.imagenes.length > 0 ? boletin.imagenes : [];\n\n                if (images.length === 0) {\n                    container.style.display = 'none';\n                    return;\n                }\n\n                container.style.display = 'block';\n                this.modalImageIndex = 0;\n\n                container.innerHTML = `\n                    <div class=\"modal-carousel-boletines\">\n                        <div class=\"modal-images-track-boletines\" id=\"modal-images-track-boletines\">\n                            ${images.map(img => `\n                                <div class=\"modal-image-boletines\">\n                                    <img decoding=\"async\" src=\"${img.url ? `https:\/\/sirm.ciudadmujer.gob.hn${img.url}` : img.url}\"\n                                         alt=\"${img.descripcion || 'Imagen del bolet\u00edn'}\"\n                                         onerror=\"this.src='https:\/\/placehold.co\/320x240?text=Sin+Imagen'\">\n                                <\/div>\n                            `).join('')}\n                        <\/div>\n                        ${images.length > 1 ? `\n                            <button class=\"image-nav prev\" id=\"modal-prev-btn-boletines\">\u2039<\/button>\n                            <button class=\"image-nav next\" id=\"modal-next-btn-boletines\">\u203a<\/button>\n                            <div class=\"image-indicators\">\n                                ${images.map((_, index) => `\n                                    <div class=\"image-indicator ${index === 0 ? 'active' : ''}\"\n                                         data-modal-image-boletines=\"${index}\"><\/div>\n                                `).join('')}\n                            <\/div>\n                        ` : ''}\n                    <\/div>\n                `;\n\n                \/\/ Setup modal image event listeners\n                this.setupModalImageEventListeners(images.length);\n            }\n\n            setupModalImageEventListeners(imageCount) {\n                if (imageCount <= 1) return;\n\n                const prevBtn = document.getElementById('modal-prev-btn-boletines');\n                const nextBtn = document.getElementById('modal-next-btn-boletines');\n\n                if (prevBtn) {\n                    prevBtn.addEventListener('click', (e) => {\n                        e.stopPropagation();\n                        this.prevModalImage();\n                    });\n                }\n\n                if (nextBtn) {\n                    nextBtn.addEventListener('click', (e) => {\n                        e.stopPropagation();\n                        this.nextModalImage();\n                    });\n                }\n\n                \/\/ Event listeners para indicadores del modal\n                document.querySelectorAll('[data-modal-image-boletines]').forEach(indicator => {\n                    indicator.addEventListener('click', (e) => {\n                        e.stopPropagation();\n                        const imageIndex = parseInt(indicator.getAttribute('data-modal-image-boletines'));\n                        this.goToModalImage(imageIndex);\n                    });\n                });\n            }\n\n            prevModalImage() {\n                const track = document.getElementById('modal-images-track-boletines');\n                const images = track.querySelectorAll('.modal-image-boletines');\n\n                this.modalImageIndex = this.modalImageIndex > 0\n                    ? this.modalImageIndex - 1\n                    : images.length - 1;\n\n                this.updateModalImage();\n            }\n\n            nextModalImage() {\n                const track = document.getElementById('modal-images-track-boletines');\n                const images = track.querySelectorAll('.modal-image-boletines');\n\n                this.modalImageIndex = (this.modalImageIndex + 1) % images.length;\n                this.updateModalImage();\n            }\n\n            goToModalImage(index) {\n                this.modalImageIndex = index;\n                this.updateModalImage();\n            }\n\n            updateModalImage() {\n                const track = document.getElementById('modal-images-track-boletines');\n                const indicators = document.querySelectorAll('[data-modal-image-boletines]');\n\n                if (track) {\n                    const translateX = -this.modalImageIndex * 100;\n                    track.style.transform = `translateX(${translateX}%)`;\n                }\n\n                indicators.forEach((indicator, index) => {\n                    indicator.classList.toggle('active', index === this.modalImageIndex);\n                });\n            }\n\n            renderModalFooter(boletin) {\n                const footer = document.getElementById('modal-footer-boletines');\n\n                if (boletin.url_red_social && boletin.tipo_red_social) {\n                    footer.innerHTML = `\n                        <a href=\"${boletin.url_red_social}\" target=\"_blank\" class=\"social-link social-${boletin.tipo_red_social}\">\n                            ${this.getSocialIcon(boletin.tipo_red_social)} Ver en ${this.getSocialName(boletin.tipo_red_social)}\n                        <\/a>\n                        <button class=\"modal-close-boletines\" id=\"modal-close-btn-boletines\" style=\"position: static !important; margin-left: auto !important;\">&times;<\/button>\n                    `;\n                } else {\n                    footer.innerHTML = `\n                        <div><\/div>\n                        <button class=\"modal-close-boletines\" id=\"modal-close-btn-boletines\" style=\"position: static !important; margin-left: auto !important;\">&times;<\/button>\n                    `;\n                }\n\n                \/\/ Reconfigurar el event listener despu\u00e9s de renderizar el footer\n                const closeBtn = document.getElementById('modal-close-btn-boletines');\n                if (closeBtn) {\n                    closeBtn.addEventListener('click', (e) => {\n                        e.preventDefault();\n                        e.stopPropagation();\n                        this.closeModal();\n                    });\n                }\n            }\n\n            closeModal() {\n                const modal = document.getElementById('modal-boletines');\n                modal.classList.remove('boletin-show');\n                document.body.classList.remove('boletin-modal-open');\n            }\n\n            getSocialIcon(type) {\n                const icons = {\n                    facebook: '\ud83d\udcd8',\n                    instagram: '\ud83d\udcf7',\n                    twitter: '\ud83d\udc26',\n                    linkedin: '\ud83d\udcbc',\n                    youtube: '\ud83d\udcfa',\n                    tiktok: '\ud83c\udfb5',\n                    otro: '\ud83d\udd17'\n                };\n                return icons[type] || '\ud83d\udd17';\n            }\n\n            getSocialName(type) {\n                const names = {\n                    facebook: 'Facebook',\n                    instagram: 'Instagram',\n                    twitter: 'X',\n                    linkedin: 'LinkedIn',\n                    youtube: 'YouTube',\n                    tiktok: 'TikTok',\n                    otro: 'Enlace'\n                };\n                return names[type] || 'Enlace';\n            }\n\n            animateEntrance() {\n                const cards = document.querySelectorAll('.boletin-card');\n                \n                gsap.fromTo(cards, {\n                    y: 100,\n                    opacity: 0,\n                    scale: 0.8\n                }, {\n                    duration: 1,\n                    y: 0,\n                    opacity: 1,\n                    scale: 1,\n                    ease: \"power3.out\",\n                    stagger: 0.15\n                });\n\n                const navButtons = document.querySelectorAll('.nav-btn');\n                if (navButtons.length > 0) {\n                    gsap.fromTo(navButtons, {\n                        y: 50,\n                        opacity: 0\n                    }, {\n                        duration: 0.8,\n                        y: 0,\n                        opacity: 1,\n                        ease: \"power2.out\",\n                        delay: 0.5,\n                        stagger: 0.1\n                    });\n                }\n            }\n\n            renderError(message) {\n                const container = document.getElementById('carousel-content');\n                container.innerHTML = `\n                    <div class=\"error-message\">\n                        <h3>Error al cargar los boletines<\/h3>\n                        <p>${message}<\/p>\n                        <button onclick=\"location.reload()\" style=\"margin-top: 1rem; padding: 0.5rem 1rem; background: #e74c3c; color: white; border: none; border-radius: 6px; cursor: pointer;\">\n                            Reintentar\n                        <\/button>\n                    <\/div>\n                `;\n            }\n        }\n\n        \/\/ Initialize carousel when DOM is ready\n        document.addEventListener('DOMContentLoaded', () => {\n            \/\/ Verificar si se debe hacer scroll al carousel despu\u00e9s de recargar por modal cerrado\n            if (sessionStorage.getItem('scrollToCarousel') === 'true') {\n                sessionStorage.removeItem('scrollToCarousel');\n                \n                \/\/ Esperar a que la p\u00e1gina se cargue completamente antes del scroll\n                window.addEventListener('load', () => {\n                    setTimeout(() => {\n                        const carouselSection = document.getElementById('seccion-boletines-scroll');\n                        if (carouselSection) {\n                            carouselSection.scrollIntoView({ \n                                behavior: 'smooth',\n                                block: 'start'\n                            });\n                        }\n                    }, 100);\n                });\n            }\n            \n            new BoletinCarousel();\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<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-c917311 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"c917311\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e0fd57d\" data-id=\"e0fd57d\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b80f771 elementor-widget elementor-widget-html\" data-id=\"b80f771\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<iframe src=\"https:\/\/www.google.com\/maps\/embed?pb=!1m14!1m8!1m3!1d15480.730705437876!2d-87.1775096!3d14.0663877!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x8f6fbcd954c9bebb%3A0xfb329008548f39d7!2sCentro%20Ciudad%20Mujer%20Kennedy!5e0!3m2!1ses-419!2shn!4v1698699813840!5m2!1ses-419!2shn\" width=\"100%\" height=\"600\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\" referrerpolicy=\"no-referrer-when-downgrade\"><\/iframe>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-0303e94 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"0303e94\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a438a27\" data-id=\"a438a27\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-edfc0d5 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"edfc0d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n\/* Color por defecto (naranja MAE) mediante variable *\/\n#calSection{\n  --cal-bg: #f0673a;\n}\n\n\/* Aplicamos la variable a la secci\u00f3n y\/o su overlay *\/\n#calSection,\n#calSection .elementor-background-overlay{\n  background: var(--cal-bg) !important;\n  transition: background .35s ease, background-color .35s ease;\n}\n\n\/* Efecto visual al icono activo (opcional) *\/\n.mod-trigger{ cursor:pointer; transition:transform .2s ease, filter .2s ease; }\n.mod-trigger.is-active{ transform:translateY(-2px); filter:drop-shadow(0 0 10px rgba(0,0,0,.25)); }\n<\/style>\n<script>\n(function(){\n  \/\/ Colores por m\u00f3dulo\n  const MODULE_COLORS = {\n    MAE:      \"#ED5A21\", \/\/ naranja\n    MSSR:     \"#026838\", \/\/ verde\n    MAPRODEM: \"#8F268B\", \/\/ morado\n    MAA:      \"#E1BC26\", \/\/ amarillo\n    MEC:      \"#E70088\", \/\/ fucsia\n    MAI:      \"#67C5D7\"  \/\/ celeste\n  };\n\n  function getModuleFromClasses(el){\n    \/\/ Busca una clase del tipo mod-XXXX y devuelve XXXX\n    const m = Array.from(el.classList).find(c => c.startsWith(\"mod-\") && c !== \"mod-trigger\");\n    return m ? m.replace(\"mod-\",\"\").toUpperCase() : null;\n  }\n\n  function setColor(section, color){\n    section.style.setProperty(\"--cal-bg\", color);\n  }\n\n  function init(){\n    const section  = document.getElementById(\"calSection\");\n    if(!section) return;\n\n    const triggers = document.querySelectorAll(\".mod-trigger\");\n    if(!triggers.length) return;\n\n    \/\/ Guarde color inicial para reset (ESC)\n    const initial = getComputedStyle(section).getPropertyValue(\"--cal-bg\").trim() || \"#f0673a\";\n\n    triggers.forEach(el=>{\n      el.addEventListener(\"click\", ()=>{\n        const key = getModuleFromClasses(el); \/\/ MAE\/MSSR\/...\n        const color = MODULE_COLORS[key] || initial;\n        setColor(section, color);\n\n        \/\/ Marcar activo\n        triggers.forEach(t=>t.classList.remove(\"is-active\"));\n        el.classList.add(\"is-active\");\n      });\n    });\n\n    \/\/ Reset con ESC (opcional)\n    document.addEventListener(\"keydown\", (e)=>{\n      if(e.key === \"Escape\"){\n        setColor(section, initial);\n        triggers.forEach(t=>t.classList.remove(\"is-active\"));\n      }\n    });\n  }\n\n  if(document.readyState === \"loading\"){\n    document.addEventListener(\"DOMContentLoaded\", init);\n  }else{\n    init();\n  }\n  window.addEventListener(\"load\", init);\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>CCM Choluteca\u00a0 Calendario Mensual de Actividades\u00a0 Septiembre 2025 mAE M\u00f3dulo de atenci\u00f3n econ\u00f3mica mSSR M\u00f3dulo de Salud Sexual y Reproductiva MAPRODEM M\u00f3dulo de Atenci\u00f3n y Protecci\u00f3n a los derechos de la mujer MAA M\u00f3dulo de Atenci\u00f3n a los Adolescentes MEC M\u00f3dulo de Educaci\u00f3n Comunitaria MAI M\u00f3dulo de Atenci\u00f3n Infantil 1 Miercoles CHARLA: USO CORRECTO DE [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","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":"","ast-disable-related-posts":"","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":"default","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-4295","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=\/wp\/v2\/pages\/4295","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4295"}],"version-history":[{"count":39,"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=\/wp\/v2\/pages\/4295\/revisions"}],"predecessor-version":[{"id":4905,"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=\/wp\/v2\/pages\/4295\/revisions\/4905"}],"wp:attachment":[{"href":"https:\/\/www.ciudadmujer.gob.hn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4295"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}