{"id":5985,"date":"2026-03-26T16:13:26","date_gmt":"2026-03-26T16:13:26","guid":{"rendered":"https:\/\/cercarbono.com\/documentos\/"},"modified":"2026-07-10T19:23:32","modified_gmt":"2026-07-10T19:23:32","slug":"documentos","status":"publish","type":"page","link":"https:\/\/cercarbono.com\/es\/documentos\/","title":{"rendered":"Documentos"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"5985\" class=\"elementor elementor-5985 elementor-5654\" data-elementor-post-type=\"page\">\n\t\t\t\t<section class=\"elementor-element elementor-element-4886a90 e-flex e-con-boxed e-con e-parent\" data-id=\"4886a90\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-276cf41 e-con-full e-flex e-con e-child\" data-id=\"276cf41\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8a5953a elementor-widget__width-initial cool-split-heading elementor-widget elementor-widget-heading\" data-id=\"8a5953a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Documentos<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ebc2f8f elementor-widget__width-initial elementor-invisible elementor-widget elementor-widget-text-editor\" data-id=\"ebc2f8f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:200}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Nos aseguramos de que todos los documentos clave sean p\u00fablicos para que la certificaci\u00f3n sea abierta, transparente y f\u00e1cil de seguir. Aqu\u00ed encontrar\u00e1s todo, desde plantillas hasta herramientas de monitoreo, todo en un solo lugar y disponible tanto en ingl\u00e9s como en espa\u00f1ol para mejorar la accesibilidad para todos los usuarios.<\/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\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-43d4f58 e-flex e-con-boxed e-con e-parent\" data-id=\"43d4f58\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-b229fb5 e-con-full e-flex e-con e-child\" data-id=\"b229fb5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-71f8540 e-con-full e-flex e-con e-child\" data-id=\"71f8540\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-f698385 e-con-full e-flex e-con e-child\" data-id=\"f698385\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d420aca cool-split-text elementor-widget elementor-widget-heading\" data-id=\"d420aca\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Explora documentos por programa y sector<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2c2c98a e-con-full e-flex e-con e-child\" data-id=\"2c2c98a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-23355d9 cool-split-text elementor-widget elementor-widget-text-editor\" data-id=\"23355d9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Usa las opciones a continuaci\u00f3n para explorar los documentos relevantes para tu selecci\u00f3n.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e42301d table-documents e-con-full e-flex e-con e-child\" data-id=\"e42301d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-ab0f21c e-con-full e-flex e-con e-child\" data-id=\"ab0f21c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-ee11584 e-con-full tabs-programme-ctnr e-flex e-con e-child\" data-id=\"ee11584\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a40c1eb tabs-programme elementor-widget elementor-widget-shortcode\" data-id=\"a40c1eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div  class=\"search-filter-base search-filter-field search-filter-field--id-21 search-filter-field--type-choice search-filter-field--input-type-radio search-filter-style--id-1 search-filter-style--choice-radio tabs-consult\"  data-search-filter-id=\"21\" ><\/div><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-84c13d7 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-shortcode\" data-id=\"84c13d7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div  class=\"search-filter-base search-filter-field search-filter-field--id-22 search-filter-field--type-search search-filter-field--input-type-text search-filter-style--id-1 search-filter-style--search-text\"  data-search-filter-id=\"22\" ><\/div><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bca1fa5 elementor-widget elementor-widget-heading\" data-id=\"bca1fa5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Selecciona un sector para ver los documentos<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fea2eb9 elementor-widget elementor-widget-shortcode\" data-id=\"fea2eb9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div  class=\"search-filter-base search-filter-field search-filter-field--id-23 search-filter-field--type-choice search-filter-field--input-type-radio search-filter-style--id-1 search-filter-style--choice-radio documents-custom-tabs\"  data-search-filter-id=\"23\" ><\/div>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3b3ec61 elementor-widget elementor-widget-shortcode\" data-id=\"3b3ec61\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t<script>\n\t(function ($) {\n\n\t\tif (window.__ccSectorIconsInit) {\n\t\t\treturn;\n\t\t}\n\t\twindow.__ccSectorIconsInit = true;\n\n\t\tconst mapIconos    = {\"gestion-y-eliminacion-de-residuos\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/ecology.svg\",\"waste-handling-and-disposal\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/ecology.svg\",\"transporte\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/group-1.svg\",\"transport\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/group-1.svg\",\"restauracion\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/monkey.svg\",\"restoration\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/monkey.svg\",\"redd\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/tree-1.svg\",\"plastico\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/milk.svg\",\"plastic\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/milk.svg\",\"industrias-manufactureras\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/factory.svg\",\"manufacturing-industries\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/factory.svg\",\"arr\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/leaf-1.svg\",\"carbono-azul\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/drop.svg\",\"blue-carbon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/drop.svg\",\"combinado-gestion-de-energia-y-residuos\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/share-1.svg\",\"combined\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/share-1.svg\",\"conservacion\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/conservation-1.svg\",\"conservation\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/conservation-1.svg\",\"reciclaje-de-elv\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/car.svg\",\"elv-recycling\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/car.svg\",\"energia\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/flash.svg\",\"energy\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/flash.svg\",\"industrias-energeticas\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/flash.svg\",\"emisiones-fugitivas\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/wind.svg\",\"fugitive-emissions\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/wind.svg\",\"energy-industries\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/flash.svg\",\"\":\"data:image\\\/svg+xml;charset=UTF-8,%3Csvg xmlns=%22http:\\\/\\\/www.w3.org\\\/2000\\\/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22\\\/%3E%3Cline x1=%2212%22 y1=%228%22 x2=%2212%22 y2=%2216%22\\\/%3E%3Cline x1=%228%22 y1=%2212%22 x2=%2216%22 y2=%2212%22\\\/%3E%3C\\\/svg%3E\"};\n\t\tconst sectorLabels = {\"gestion-y-eliminacion-de-residuos\":\"Gesti\\u00f3n y eliminaci\\u00f3n de residuos\",\"waste-handling-and-disposal\":\"Waste handling and disposal\",\"transporte\":\"Transporte\",\"transport\":\"Transport\",\"restauracion\":\"Restauraci\\u00f3n\",\"restoration\":\"Restoration\",\"redd\":\"REDD+\",\"plastico\":\"Pl\\u00e1sticos\",\"plastic\":\"Plastics\",\"industrias-manufactureras\":\"Industrias manufactureras\",\"manufacturing-industries\":\"Manufacturing industries\",\"arr\":\"ARR\",\"carbono-azul\":\"Carbono azul\",\"blue-carbon\":\"Blue carbon\",\"combinado-gestion-de-energia-y-residuos\":\"Combinado (Gesti\\u00f3n de energ\\u00eda y residuos)\",\"combined\":\"Combined (Energy and waste management)\",\"conservacion\":\"Conservaci\\u00f3n\",\"conservation\":\"Conservation\",\"reciclaje-de-elv\":\"Reciclaje de ELV\",\"elv-recycling\":\"ELV recycling\",\"energia\":\"Energ\\u00eda\",\"energy\":\"Energy\",\"industrias-energeticas\":\"Industrias energ\\u00e9ticas\",\"emisiones-fugitivas\":\"Emisiones fugitivas\",\"fugitive-emissions\":\"Fugitive emissions\",\"energy-industries\":\"Industrias energ\\u00e9ticas\"};\n\t\tconst allLabel     = \"Todos los sectores\";\n\t\tconst LOCALE_SECTOR_ALIASES = {\"restoration\":\"restauracion\",\"conservation\":\"conservacion\",\"energy-industries\":\"energia\",\"energy\":\"energia\",\"waste-handling-and-disposal\":\"gestion-y-eliminacion-de-residuos\",\"elv-recycling\":\"reciclaje-de-elv\",\"blue-carbon\":\"carbono-azul\",\"fugitive-emissions\":\"emisiones-fugitivas\",\"manufacturing-industries\":\"industrias-manufactureras\",\"transport\":\"transporte\",\"combined\":\"combinado-gestion-de-energia-y-residuos\",\"plastic\":\"plastico\"};\n\n\t\t\/\/ Same order as EN documents page (slug + ES aliases).\n\t\tconst SECTOR_ORDER = [\n\t\t\t'',\n\t\t\t'redd',\n\t\t\t'arr',\n\t\t\t'energy-industries',\n\t\t\t'industrias-energeticas',\n\t\t\t'waste-handling-and-disposal',\n\t\t\t'gestion-y-eliminacion-de-residuos',\n\t\t\t'elv-recycling',\n\t\t\t'reciclaje-de-elv',\n\t\t\t'blue-carbon',\n\t\t\t'carbono-azul',\n\t\t\t'fugitive-emissions',\n\t\t\t'emisiones-fugitivas',\n\t\t\t'restoration',\n\t\t\t'restauracion',\n\t\t\t'manufacturing-industries',\n\t\t\t'industrias-manufactureras',\n\t\t\t'transport',\n\t\t\t'transporte',\n\t\t\t'energia',\n\t\t\t'combined',\n\t\t\t'combinado-gestion-de-energia-y-residuos',\n\t\t\t'conservation',\n\t\t\t'conservacion',\n\t\t\t'plastic',\n\t\t\t'plastico'\n\t\t];\n\n\t\tfunction sectorSortIndex(slug) {\n\t\t\tvar idx = SECTOR_ORDER.indexOf(slug || '');\n\t\t\treturn idx === -1 ? 999 : idx;\n\t\t}\n\n\t\tfunction reorderSectorPills() {\n\t\t\tvar group = document.querySelector('.search-filter-field--id-23 .search-filter-input-group');\n\t\t\tif (!group) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar items = Array.from(group.querySelectorAll(':scope > .search-filter-input-radio'));\n\t\t\tif (items.length < 2) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\titems.sort(function (a, b) {\n\t\t\t\treturn sectorSortIndex(a.getAttribute('data-option-value') || '') - sectorSortIndex(b.getAttribute('data-option-value') || '');\n\t\t\t});\n\n\t\t\titems.forEach(function (item) {\n\t\t\t\tgroup.appendChild(item);\n\t\t\t});\n\t\t}\n\n\t\tfunction isPillVisible(pill) {\n\t\t\tif (!pill) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (pill.style && pill.style.display === 'none') {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (window.getComputedStyle && window.getComputedStyle(pill).display === 'none') {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\n\t\tfunction normalizeLocaleSectorPills() {\n\t\t\tvar field = document.querySelector('.search-filter-field--id-23')\n\t\t\t\t|| document.querySelector('[data-search-filter-id=\"23\"]');\n\t\t\tif (!field) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfield.querySelectorAll('.search-filter-input-radio').forEach(function (pill) {\n\t\t\t\tvar slug = pill.getAttribute('data-option-value');\n\t\t\t\tif (!slug || !LOCALE_SECTOR_ALIASES[slug]) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar canonical = LOCALE_SECTOR_ALIASES[slug];\n\t\t\t\tvar canonicalPill = field.querySelector('[data-option-value=\"' + canonical + '\"]');\n\t\t\t\tif (canonicalPill && canonicalPill !== pill) {\n\t\t\t\t\tpill.style.display = 'none';\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tpill.setAttribute('data-option-value', canonical);\n\t\t\t\tvar input = pill.querySelector('input[type=\"radio\"]');\n\t\t\t\tif (input) {\n\t\t\t\t\tinput.value = canonical;\n\t\t\t\t}\n\t\t\t\tvar label = pill.querySelector('.search-filter-input-radio__label');\n\t\t\t\tif (label && sectorLabels[canonical]) {\n\t\t\t\t\tlabel.textContent = sectorLabels[canonical];\n\t\t\t\t}\n\t\t\t\tpill.removeAttribute('data-icon-applied');\n\t\t\t});\n\t\t}\n\n\t\tfunction resolveIconSlug(slug) {\n\t\t\tif (!slug) {\n\t\t\t\treturn slug;\n\t\t\t}\n\t\t\tif (mapIconos[slug]) {\n\t\t\t\treturn slug;\n\t\t\t}\n\t\t\tvar canonical = LOCALE_SECTOR_ALIASES[slug];\n\t\t\tif (canonical && mapIconos[canonical]) {\n\t\t\t\treturn canonical;\n\t\t\t}\n\t\t\tvar alias;\n\t\t\tfor (alias in LOCALE_SECTOR_ALIASES) {\n\t\t\t\tif (LOCALE_SECTOR_ALIASES[alias] === slug && mapIconos[alias]) {\n\t\t\t\t\treturn alias;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn slug;\n\t\t}\n\n\t\tfunction dedupeEnergySectorPills() {\n\t\t\tvar field = document.querySelector('.search-filter-field--id-23');\n\t\t\tif (!field) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar canonical = field.querySelector('[data-option-value=\"energia\"]')\n\t\t\t\t|| field.querySelector('[data-option-value=\"energy\"]');\n\t\t\tif (!canonical) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t['energy-industries', 'industrias-energeticas', 'energy', 'energia'].forEach(function (slug) {\n\t\t\t\tif (slug === canonical.getAttribute('data-option-value')) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tvar dupe = field.querySelector('[data-option-value=\"' + slug + '\"]');\n\t\t\t\tif (dupe) {\n\t\t\t\t\tdupe.style.display = 'none';\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfunction ensureFirstSectorSelected() {\n\t\t\tvar field = document.querySelector('.search-filter-field--id-23');\n\t\t\tif (!field) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar params = new URLSearchParams(window.location.search);\n\t\t\tif (params.get('_sector-document') || params.get('_sft_sector-document')) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar checked = field.querySelector('input[type=\"radio\"]:checked');\n\t\t\tif (checked) {\n\t\t\t\tvar pill = checked.closest('.search-filter-input-radio');\n\t\t\t\tif (pill && isPillVisible(pill)) {\n\t\t\t\t\tfield.querySelectorAll('.search-filter-input-radio--is-active').forEach(function (el) {\n\t\t\t\t\t\tel.classList.remove('search-filter-input-radio--is-active');\n\t\t\t\t\t});\n\t\t\t\t\tpill.classList.add('search-filter-input-radio--is-active');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tvar candidates = Array.from(field.querySelectorAll('.search-filter-input-group > .search-filter-input-radio'));\n\t\t\tvar first = null;\n\t\t\tfor (var i = 0; i < candidates.length; i++) {\n\t\t\t\tif (isPillVisible(candidates[i])) {\n\t\t\t\t\tfirst = candidates[i];\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tvar input = first ? first.querySelector('input[type=\"radio\"]') : null;\n\t\t\tif (input && !input.checked) {\n\t\t\t\tinput.click();\n\t\t\t}\n\t\t}\n\n\t\tfunction applySectorLabels() {\n\t\t\tdocument.querySelectorAll('.search-filter-field--id-23 .search-filter-input-radio').forEach(function (pill) {\n\t\t\t\tvar slug  = pill.getAttribute('data-option-value');\n\t\t\t\tvar label = pill.querySelector('.search-filter-input-radio__label');\n\t\t\t\tif (!label) return;\n\n\t\t\t\tif (!slug || slug === '' || slug === 'all') {\n\t\t\t\t\tlabel.textContent = allLabel;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (sectorLabels[slug]) {\n\t\t\t\t\tlabel.textContent = sectorLabels[slug];\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfunction applySectorIcons() {\n\t\t\tdocument.querySelectorAll('.search-filter-field--id-23 .search-filter-input-radio:not([data-icon-applied=\"1\"])').forEach(function (pill) {\n\t\t\t\tvar slug = pill.getAttribute('data-option-value');\n\t\t\t\tif (slug === 'all') slug = '';\n\n\t\t\t\tvar iconSlug = resolveIconSlug(slug);\n\t\t\t\tif (mapIconos[iconSlug]) {\n\t\t\t\t\tvar labelEl = pill.querySelector('.search-filter-input-radio__label');\n\t\t\t\t\tvar iconUrl = mapIconos[iconSlug];\n\t\t\t\t\tvar iconHTML = '<span class=\"acf-dynamic-icon\" style=\"'\n\t\t\t\t\t\t+ 'display:inline-block;width:32px;height:32px;margin-right:6px;margin-bottom:-3px;'\n\t\t\t\t\t\t+ 'background-color:currentColor;'\n\t\t\t\t\t\t+ 'mask-image:url(\\'' + iconUrl + '\\');-webkit-mask-image:url(\\'' + iconUrl + '\\');'\n\t\t\t\t\t\t+ 'mask-size:contain;-webkit-mask-size:contain;'\n\t\t\t\t\t\t+ 'mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;'\n\t\t\t\t\t\t+ 'mask-position:center;-webkit-mask-position:center;'\n\t\t\t\t\t\t+ '\"><\/span>';\n\n\t\t\t\t\tif (labelEl && !pill.querySelector('.acf-dynamic-icon')) {\n\t\t\t\t\t\tlabelEl.insertAdjacentHTML('beforebegin', iconHTML);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tpill.setAttribute('data-icon-applied', '1');\n\t\t\t});\n\t\t}\n\n\t\tfunction updateHeadingText() {\n\t\t\tvar selectedRadio = $('.search-filter-field--id-23 input[type=\"radio\"]:checked');\n\t\t\tif (selectedRadio.length === 0) return;\n\n\t\t\tvar slug = selectedRadio.val();\n\t\t\tvar labelText = '';\n\n\t\t\tif (!slug || slug === '' || slug === 'all') {\n\t\t\t\tlabelText = allLabel;\n\t\t\t} else if (sectorLabels[slug]) {\n\t\t\t\tlabelText = sectorLabels[slug];\n\t\t\t} else {\n\t\t\t\tlabelText = selectedRadio.next('label').find('.search-filter-input-radio__label').text().trim();\n\t\t\t}\n\n\t\t\tvar heading = null;\n\t\t\t$('.elementor-heading-title').each(function () {\n\t\t\t\tif (\n\t\t\t\t\t$(this).text().indexOf('Available documents for') !== -1 ||\n\t\t\t\t\t$(this).text().indexOf('Documentos disponibles para') !== -1\n\t\t\t\t) {\n\t\t\t\t\theading = $(this);\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif (!heading || labelText === '') return;\n\n\t\t\tif (heading.text().indexOf('Documentos disponibles para') !== -1) {\n\t\t\t\theading.text('Documentos disponibles para: ' + labelText);\n\t\t\t} else {\n\t\t\t\theading.text('Available documents for: ' + labelText);\n\t\t\t}\n\t\t}\n\n\t\tfunction refreshSectorUI() {\n\t\t\treorderSectorPills();\n\t\t\tnormalizeLocaleSectorPills();\n\t\t\tdedupeEnergySectorPills();\n\t\t\tapplySectorLabels();\n\t\t\tapplySectorIcons();\n\t\t\tensureFirstSectorSelected();\n\t\t\tupdateHeadingText();\n\t\t}\n\n\t\t$(document).ready(refreshSectorUI);\n\t\tsetTimeout(refreshSectorUI, 150);\n\t\tsetTimeout(refreshSectorUI, 500);\n\n\t\t$(document).on('change', '.search-filter-field--id-23 input[type=\"radio\"]', updateHeadingText);\n\n\t\tvar sectorUiTimer = null;\n\t\tfunction scheduleSectorUi() {\n\t\t\tclearTimeout(sectorUiTimer);\n\t\t\tsectorUiTimer = setTimeout(refreshSectorUI, 300);\n\t\t}\n\n\t\t$(document).on('sf:ajaxfinish sf:ajaxformfinish', scheduleSectorUi);\n\t\tdocument.addEventListener('cc:sector-pills-restored', scheduleSectorUi);\n\n\t})(jQuery);\n\t<\/script>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4410e0f elementor-widget elementor-widget-shortcode\" data-id=\"4410e0f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t<style id=\"cc-sector-stack-styles\">\n\t\t.table-directory-cont .elementor-post-info__terms-list,\n\t\t.table-directory-cont .elementor-widget-container,\n\t\t.table-directory-cont .elementor-post-info,\n\t\t.cc-doc-body .cc-sector-stack {\n\t\t\toverflow: visible !important;\n\t\t}\n\t\t.cc-sector-stack {\n\t\t\tdisplay: inline-flex;\n\t\t\talign-items: center;\n\t\t\theight: 28px;\n\t\t\tvertical-align: middle;\n\t\t\toverflow: visible;\n\t\t\tposition: relative;\n\t\t\tz-index: 2;\n\t\t}\n\t\t.cc-sector-stack-icon {\n\t\t\tposition: relative;\n\t\t\tcursor: pointer;\n\t\t\toverflow: visible;\n\t\t\ttransition: transform 0.15s ease;\n\t\t}\n\t\t.cc-sector-stack-icon:hover {\n\t\t\tz-index: 30 !important;\n\t\t\ttransform: scale(1.15);\n\t\t\tbox-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n\t\t}\n\t\t.cc-sector-stack-icon::after {\n\t\t\tcontent: attr(data-sector);\n\t\t\tposition: absolute;\n\t\t\tbottom: calc(100% + 6px);\n\t\t\tleft: 50%;\n\t\t\ttransform: translateX(-50%) scale(0.9);\n\t\t\tbackground: #2B463B;\n\t\t\tcolor: #fff;\n\t\t\tpadding: 4px 10px;\n\t\t\tborder-radius: 6px;\n\t\t\tfont-size: 12px;\n\t\t\tfont-weight: 500;\n\t\t\twhite-space: nowrap;\n\t\t\topacity: 0;\n\t\t\tpointer-events: none;\n\t\t\ttransition: opacity 0.15s ease, transform 0.15s ease;\n\t\t\tz-index: 100;\n\t\t}\n\t\t.cc-sector-stack-icon::before {\n\t\t\tcontent: '';\n\t\t\tposition: absolute;\n\t\t\tbottom: calc(100% + 2px);\n\t\t\tleft: 50%;\n\t\t\ttransform: translateX(-50%);\n\t\t\tborder: 4px solid transparent;\n\t\t\tborder-top-color: #2B463B;\n\t\t\topacity: 0;\n\t\t\tpointer-events: none;\n\t\t\ttransition: opacity 0.15s ease;\n\t\t\tz-index: 100;\n\t\t}\n\t\t.cc-sector-stack-icon:hover::after {\n\t\t\topacity: 1;\n\t\t\ttransform: translateX(-50%) scale(1);\n\t\t}\n\t\t.cc-sector-stack-icon:hover::before {\n\t\t\topacity: 1;\n\t\t}\n\t\t@media (max-width: 1179px) {\n\t\t\t.cc-doc-body .gov-mobile-label {\n\t\t\t\tdisplay: none !important;\n\t\t\t}\n\t\t}\n\t<\/style>\n\t<script>\n\t(function () {\n\t\tfunction bootDocGroupsScript() {\n\t\t\tif (window.__ccDocGroupsInit) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (typeof jQuery === 'undefined') {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\twindow.__ccDocGroupsInit = true;\n\n\t\t\tvar $ = jQuery;\n\n\t\tconst typeDocData = {\"marco-de-certificacion\":{\"name\":\"Marco de certificaci\\u00f3n\",\"description\":\"Las normas y procedimientos que rigen la certificaci\\u00f3n, desde el registro hasta la emisi\\u00f3n.\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/shield-tick-7.svg\"},\"validacion-y-verificacion\":{\"name\":\"Validaci\\u00f3n y verificaci\\u00f3n\",\"description\":\"Las normas y procedimientos que rigen la certificaci\\u00f3n, desde el registro hasta la emisi\\u00f3n.\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/Check-3.svg\"},\"herramientas\":{\"name\":\"Herramientas\",\"description\":\"Las normas y procedimientos que rigen la certificaci\\u00f3n, desde el registro hasta la emisi\\u00f3n.\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/edit-2.svg\"},\"formulacion-del-proyecto-y-preinscripcion\":{\"name\":\"Formulaci\\u00f3n del proyecto y preinscripci\\u00f3n\",\"description\":\"Normas y procedimientos que rigen la certificaci\\u00f3n, desde el registro hasta la emisi\\u00f3n.\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/note-1.svg\"},\"supervision-e-implementacion\":{\"name\":\"Supervisi\\u00f3n e implementaci\\u00f3n\",\"description\":\"Las normas y procedimientos que rigen la certificaci\\u00f3n, desde el registro hasta la emisi\\u00f3n.\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/search-normal-3.svg\"},\"metodologias\":{\"name\":\"Metodolog\\u00edas\",\"description\":\"\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/element-equal.svg\"},\"inactivo\":{\"name\":\"Inactivo\",\"description\":\"Las normas y procedimientos que rigen la certificaci\\u00f3n, desde el registro hasta la emisi\\u00f3n.\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/close-circle.svg\"},\"guias\":{\"name\":\"Gu\\u00edas\",\"description\":\"Las normas y procedimientos que rigen la certificaci\\u00f3n, desde el registro hasta la emisi\\u00f3n.\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/book.svg\"}};\n\t\tconst sectorIcons = {\"gestion-y-eliminacion-de-residuos\":{\"name\":\"Gesti\\u00f3n y eliminaci\\u00f3n de residuos\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/ecology.svg\",\"slug\":\"gestion-y-eliminacion-de-residuos\"},\"waste-handling-and-disposal\":{\"name\":\"Waste handling and disposal\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/ecology.svg\",\"slug\":\"waste-handling-and-disposal\"},\"transporte\":{\"name\":\"Transporte\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/group-1.svg\",\"slug\":\"transporte\"},\"transport\":{\"name\":\"Transport\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/group-1.svg\",\"slug\":\"transport\"},\"restauracion\":{\"name\":\"Restauraci\\u00f3n\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/monkey.svg\",\"slug\":\"restauracion\"},\"restoration\":{\"name\":\"Restoration\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/monkey.svg\",\"slug\":\"restoration\"},\"redd\":{\"name\":\"REDD+\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/tree-1.svg\",\"slug\":\"redd\"},\"plastico\":{\"name\":\"Pl\\u00e1sticos\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/milk.svg\",\"slug\":\"plastico\"},\"plastic\":{\"name\":\"Plastics\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/milk.svg\",\"slug\":\"plastic\"},\"industrias-manufactureras\":{\"name\":\"Industrias manufactureras\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/factory.svg\",\"slug\":\"industrias-manufactureras\"},\"manufacturing-industries\":{\"name\":\"Manufacturing industries\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/factory.svg\",\"slug\":\"manufacturing-industries\"},\"arr\":{\"name\":\"ARR\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/leaf-1.svg\",\"slug\":\"arr\"},\"carbono-azul\":{\"name\":\"Carbono azul\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/drop.svg\",\"slug\":\"carbono-azul\"},\"blue-carbon\":{\"name\":\"Blue carbon\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/drop.svg\",\"slug\":\"blue-carbon\"},\"combinado-gestion-de-energia-y-residuos\":{\"name\":\"Combinado (Gesti\\u00f3n de energ\\u00eda y residuos)\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/share-1.svg\",\"slug\":\"combinado-gestion-de-energia-y-residuos\"},\"combined\":{\"name\":\"Combined (Energy and waste management)\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/share-1.svg\",\"slug\":\"combined\"},\"conservacion\":{\"name\":\"Conservaci\\u00f3n\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/conservation-1.svg\",\"slug\":\"conservacion\"},\"conservation\":{\"name\":\"Conservation\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/conservation-1.svg\",\"slug\":\"conservation\"},\"reciclaje-de-elv\":{\"name\":\"Reciclaje de ELV\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/car.svg\",\"slug\":\"reciclaje-de-elv\"},\"elv-recycling\":{\"name\":\"ELV recycling\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/car.svg\",\"slug\":\"elv-recycling\"},\"energia\":{\"name\":\"Energ\\u00eda\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/flash.svg\",\"slug\":\"energia\"},\"energy\":{\"name\":\"Energy\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/flash.svg\",\"slug\":\"energy\"},\"industrias-energeticas\":{\"name\":\"Industrias energ\\u00e9ticas\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/flash.svg\",\"slug\":\"industrias-energeticas\"},\"emisiones-fugitivas\":{\"name\":\"Emisiones fugitivas\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/wind.svg\",\"slug\":\"emisiones-fugitivas\"},\"fugitive-emissions\":{\"name\":\"Fugitive emissions\",\"icon\":\"https:\\\/\\\/cercarbono.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/wind.svg\",\"slug\":\"fugitive-emissions\"}};\n\t\tconst sectorByName = {\"gesti\\u00f3n y eliminaci\\u00f3n de residuos\":\"gestion-y-eliminacion-de-residuos\",\"waste handling and disposal\":\"waste-handling-and-disposal\",\"transporte\":\"transporte\",\"transport\":\"transport\",\"restauraci\\u00f3n\":\"restauracion\",\"restoration\":\"restoration\",\"redd+\":\"redd\",\"pl\\u00e1sticos\":\"plastico\",\"plastics\":\"plastic\",\"industrias manufactureras\":\"industrias-manufactureras\",\"manufacturing industries\":\"manufacturing-industries\",\"arr\":\"arr\",\"carbono azul\":\"carbono-azul\",\"blue carbon\":\"blue-carbon\",\"combinado (gesti\\u00f3n de energ\\u00eda y residuos)\":\"combinado-gestion-de-energia-y-residuos\",\"combined (energy and waste management)\":\"combined\",\"conservaci\\u00f3n\":\"conservacion\",\"conservation\":\"conservation\",\"reciclaje de elv\":\"reciclaje-de-elv\",\"elv recycling\":\"elv-recycling\",\"energ\\u00eda\":\"energia\",\"energy\":\"energy\",\"industrias energ\\u00e9ticas\":\"industrias-energeticas\",\"emisiones fugitivas\":\"emisiones-fugitivas\",\"fugitive emissions\":\"fugitive-emissions\"};\n\t\tconst programmePills = {\"bySlug\":{\"carbon\":{\"name\":\"Carbon\",\"class\":\"cc-pill-green-light\",\"taxonomy\":\"programme\"},\"carbono\":{\"name\":\"Carbono\",\"class\":\"cc-pill-green-light\",\"taxonomy\":\"programme\"},\"biodiversity\":{\"name\":\"Biodiversity\",\"class\":\"cc-pill-blue-light\",\"taxonomy\":\"programme\"},\"biodiversidad\":{\"name\":\"Biodiversidad\",\"class\":\"cc-pill-blue-light\",\"taxonomy\":\"programme\"},\"circular-economy\":{\"name\":\"Circular Economy\",\"class\":\"cc-pill-teal-light\",\"taxonomy\":\"programme\"},\"economia-circular\":{\"name\":\"Econom\\u00eda circular\",\"class\":\"cc-pill-teal-light\",\"taxonomy\":\"programme\"},\"minutes\":{\"name\":\"Minutes\",\"class\":\"cc-pill-gray-dark\",\"taxonomy\":\"programme\"},\"actas\":{\"name\":\"Actas\",\"class\":\"cc-pill-gray-dark\",\"taxonomy\":\"programme\"}},\"byName\":{\"carbon\":\"carbon\",\"carbono\":\"carbono\",\"biodiversity\":\"biodiversity\",\"biodiversidad\":\"biodiversidad\",\"circular economy\":\"circular-economy\",\"econom\\u00eda circular\":\"economia-circular\",\"minutes\":\"minutes\",\"actas\":\"actas\"}};\n\t\tconst docHeaders  = {\"documents\":\"Documentos\",\"programme\":\"Programa\",\"sector\":\"Sector\",\"version\":\"Versi\\u00f3n\",\"publication_date\":\"Fecha de publicaci\\u00f3n\",\"english\":\"Ingl\\u00e9s\",\"spanish\":\"Espa\\u00f1ol\"};\n\n\t\tvar PROGRAMME_SLUG_GROUPS = {\n\t\t\tcarbon: ['carbon', 'carbono'],\n\t\t\tbiodiversity: ['biodiversity', 'biodiversidad'],\n\t\t\t'circular-economy': ['circular-economy', 'economia-circular', 'econom\u00eda-circular']\n\t\t};\n\n\t\tfunction normalizeProgrammeSlug(slug) {\n\t\t\treturn slug === 'carbono' ? 'carbon' : slug;\n\t\t}\n\n\t\tfunction resolveProgrammeTabKey(slug) {\n\t\t\tslug = normalizeProgrammeSlug(slug);\n\t\t\tfor (var key in PROGRAMME_SLUG_GROUPS) {\n\t\t\t\tif (PROGRAMME_SLUG_GROUPS[key].indexOf(slug) !== -1) {\n\t\t\t\t\treturn key;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn slug;\n\t\t}\n\n\t\tfunction programmeSlugInGroup(slug, groupKey) {\n\t\t\tslug = normalizeProgrammeSlug(slug);\n\t\t\tvar group = PROGRAMME_SLUG_GROUPS[groupKey];\n\t\t\tif (!group) {\n\t\t\t\treturn slug === groupKey;\n\t\t\t}\n\t\t\treturn group.indexOf(slug) !== -1;\n\t\t}\n\n\t\tfunction getActiveProgrammeTabSlug() {\n\t\t\tvar field = document.querySelector('.search-filter-field--id-21');\n\t\t\tif (!field) {\n\t\t\t\tvar tabSelector = document.querySelector('.search-filter-input-group.search-filter-field__input');\n\t\t\t\tif (tabSelector) {\n\t\t\t\t\tvar active = tabSelector.querySelector('.search-filter-input-radio--is-active');\n\t\t\t\t\tif (active && active.dataset.optionValue) {\n\t\t\t\t\t\treturn active.dataset.optionValue;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tvar activeRadio = field.querySelector('.search-filter-input-radio--is-active');\n\t\t\tif (activeRadio && activeRadio.dataset.optionValue) {\n\t\t\t\treturn activeRadio.dataset.optionValue;\n\t\t\t}\n\t\t\tvar checked = field.querySelector('input[type=\"radio\"]:checked');\n\t\t\treturn checked ? checked.value : '';\n\t\t}\n\n\t\tfunction extractProgrammeSlugFromTerm(termEl) {\n\t\t\tif (termEl.dataset.ccProgrammeSlug) {\n\t\t\t\treturn termEl.dataset.ccProgrammeSlug;\n\t\t\t}\n\t\t\tvar link = termEl.closest('a[href]') || termEl.querySelector('a[href]');\n\t\t\tvar href = link ? link.getAttribute('href') : '';\n\t\t\tif (href) {\n\t\t\t\tvar match = href.match(\/programme\\\/([^\/?#]+)\/i) || href.match(\/[?&]programme=([^&]+)\/i);\n\t\t\t\tif (match && match[1]) {\n\t\t\t\t\treturn decodeURIComponent(match[1]).replace(\/\\\/$\/, '');\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\n\t\tfunction getProgrammeSlugsFromItem(item) {\n\t\t\tvar slugs = [];\n\t\t\tif (!item || !item.classList) {\n\t\t\t\treturn slugs;\n\t\t\t}\n\t\t\titem.classList.forEach(function (cls) {\n\t\t\t\tif (cls.indexOf('programme-') === 0) {\n\t\t\t\t\tslugs.push(normalizeProgrammeSlug(cls.replace('programme-', '')));\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (programmePills.bySlug) {\n\t\t\t\tObject.keys(programmePills.bySlug).forEach(function (slug) {\n\t\t\t\t\tif (item.classList.contains(slug)) {\n\t\t\t\t\t\tslugs.push(slug);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn slugs;\n\t\t}\n\n\t\tfunction pickProgrammeSlug(allSlugs, activeTabSlug) {\n\t\t\tif (!allSlugs.length) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tif (activeTabSlug) {\n\t\t\t\tvar tabKey = resolveProgrammeTabKey(activeTabSlug);\n\t\t\t\tfor (var i = 0; i < allSlugs.length; i++) {\n\t\t\t\t\tif (programmeSlugInGroup(allSlugs[i], tabKey)) {\n\t\t\t\t\t\treturn allSlugs[i];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\treturn allSlugs[0];\n\t\t}\n\n\t\tfunction normalizeProgrammeColumn(rowNode, loopItem) {\n\t\t\tvar lists = rowNode.querySelectorAll('.elementor-post-info__terms-list');\n\t\t\tif (!lists.length) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar programmeList = lists[0];\n\t\t\tvar activeTab = getActiveProgrammeTabSlug();\n\t\t\tvar slugs = getProgrammeSlugsFromItem(loopItem);\n\n\t\t\tprogrammeList.querySelectorAll('.elementor-post-info__terms-list-item').forEach(function (term) {\n\t\t\t\tvar slug = extractProgrammeSlugFromTerm(term);\n\t\t\t\tif (slug && slugs.indexOf(slug) === -1) {\n\t\t\t\t\tslugs.push(slug);\n\t\t\t\t}\n\t\t\t\tif (!slug) {\n\t\t\t\t\tvar norm = normalizeSectorName(term.textContent);\n\t\t\t\t\tif (norm && programmePills.byName && programmePills.byName[norm]) {\n\t\t\t\t\t\tslug = programmePills.byName[norm];\n\t\t\t\t\t\tif (slugs.indexOf(slug) === -1) {\n\t\t\t\t\t\t\tslugs.push(slug);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tvar chosenSlug = pickProgrammeSlug(slugs, activeTab);\n\n\t\t\tif (!chosenSlug || !programmePills.bySlug || !programmePills.bySlug[chosenSlug]) {\n\t\t\t\tvar terms = programmeList.querySelectorAll('.elementor-post-info__terms-list-item');\n\t\t\t\tif (terms.length > 1) {\n\t\t\t\t\tfor (var p = 1; p < terms.length; p++) {\n\t\t\t\t\t\tterms[p].remove();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (terms[0] && chosenSlug) {\n\t\t\t\t\tterms[0].dataset.ccProgrammeSlug = chosenSlug;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar entry = programmePills.bySlug[chosenSlug];\n\t\t\tprogrammeList.innerHTML = '<span class=\"elementor-post-info__terms-list-item\" data-cc-programme-slug=\"' + escapeHtmlAttr(chosenSlug) + '\">' + entry.name + '<\/span>';\n\t\t}\n\n\t\tfunction normalizeSectorName(name) {\n\t\t\treturn (name || '').trim().toLowerCase().replace(\/\\s+\/g, ' ');\n\t\t}\n\n\t\tfunction findSectorBySlug(slug) {\n\t\t\tif (!slug || !sectorIcons[slug]) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn { slug: slug, data: sectorIcons[slug] };\n\t\t}\n\n\t\tfunction extractSectorSlugFromTerm(termEl) {\n\t\t\tvar link = termEl.closest('a[href]') || termEl.querySelector('a[href]');\n\t\t\tvar href = link ? link.getAttribute('href') : '';\n\t\t\tif (!href) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tvar patterns = [\n\t\t\t\t\/sector-document\\\/([^\/?#]+)\/i,\n\t\t\t\t\/[?&]sector-document=([^&]+)\/i,\n\t\t\t\t\/[?&]term=([^&]+)\/i\n\t\t\t];\n\t\t\tfor (var i = 0; i < patterns.length; i++) {\n\t\t\t\tvar match = href.match(patterns[i]);\n\t\t\t\tif (match && match[1]) {\n\t\t\t\t\treturn decodeURIComponent(match[1]).replace(\/\\\/$\/, '');\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\n\t\tfunction findSectorByName(name) {\n\t\t\tvar norm = normalizeSectorName(name);\n\t\t\tif (norm && sectorByName[norm]) {\n\t\t\t\treturn findSectorBySlug(sectorByName[norm]);\n\t\t\t}\n\t\t\tfor (var slug in sectorIcons) {\n\t\t\t\tif (normalizeSectorName(sectorIcons[slug].name) === norm) {\n\t\t\t\t\treturn { slug: slug, data: sectorIcons[slug] };\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\n\t\tfunction findSectorFromTerm(termEl) {\n\t\t\tvar slug = extractSectorSlugFromTerm(termEl);\n\t\t\tif (slug) {\n\t\t\t\tvar bySlug = findSectorBySlug(slug);\n\t\t\t\tif (bySlug) {\n\t\t\t\t\treturn bySlug;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn findSectorByName(termEl.innerText.trim());\n\t\t}\n\n\t\tfunction isSectorTermList(terms) {\n\t\t\tfor (var i = 0; i < terms.length; i++) {\n\t\t\t\tif (extractSectorSlugFromTerm(terms[i])) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tif (findSectorByName(terms[i].innerText.trim())) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\tfunction resolveSectorSlug(slug) {\n\t\t\tif (!slug) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tif (sectorIcons[slug]) {\n\t\t\t\treturn slug;\n\t\t\t}\n\t\t\tfor (var key in sectorIcons) {\n\t\t\t\tif (sectorIcons[key].slug === slug) {\n\t\t\t\t\treturn key;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn slug;\n\t\t}\n\n\t\tlet cachedElementorStyles = '';\n\t\tlet cachedMagicClass = '';\n\n\t\tconst docHeaderGlobalHTML = `\n\t\t<div class=\"elementor-element elementor-widget elementor-widget-html\" style=\"width: 100%;\">\n\t\t\t<div class=\"cc-doc-table-header\">\n\t\t\t\t<div>${docHeaders.documents}<\/div>\n\t\t\t\t<div>${docHeaders.programme}<\/div>\n\t\t\t\t<div>${docHeaders.sector}<\/div>\n\t\t\t\t<div class=\"sort-col sort-version\" data-type=\"${docHeaders.version}\" data-col=\"4\">${docHeaders.version}\n\t\t\t\t\t<span class=\"sort-icon\"><svg width=\"14\" height=\"15\" viewBox=\"0 0 14 15\" fill=\"none\"><path d=\"M10.5 3.88652L7.61869 1.00521C7.27841 0.664931 6.72159 0.664931 6.38131 1.00521L3.5 3.88652\" stroke=\"#8A94AD\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><path d=\"M3.5 10.6092L6.38131 13.4905C6.72159 13.8308 7.27841 13.8308 7.61869 13.4905L10.5 10.6092\" stroke=\"#8A94AD\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/svg><\/span>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"sort-col sort-publication-date\" data-type=\"${docHeaders.publication_date}\" data-col=\"5\">${docHeaders.publication_date}\n\t\t\t\t\t<span class=\"sort-icon\"><svg width=\"14\" height=\"15\" viewBox=\"0 0 14 15\" fill=\"none\"><path d=\"M10.5 3.88652L7.61869 1.00521C7.27841 0.664931 6.72159 0.664931 6.38131 1.00521L3.5 3.88652\" stroke=\"#8A94AD\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><path d=\"M3.5 10.6092L6.38131 13.4905C6.72159 13.8308 7.27841 13.8308 7.61869 13.4905L10.5 10.6092\" stroke=\"#8A94AD\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/svg><\/span>\n\t\t\t\t<\/div>\n\t\t\t\t<div data-col=\"6\">${docHeaders.english}<\/div>\n\t\t\t\t<div data-col=\"7\">${docHeaders.spanish}<\/div>\n\t\t\t<\/div>\n\t\t<\/div>`;\n\n\t\tconst SECTOR_ICON_COLOR = '#6B7694';\n\t\tconst SECTOR_PILL_BG    = '#F1F5FF';\n\t\tconst SECTOR_PILL_BORDER = '#6B7694';\n\n\t\tfunction escapeCssUrl(url) {\n\t\t\treturn String(url || '').replace(\/\\\\\/g, '\\\\\\\\').replace(\/'\/g, '%27');\n\t\t}\n\n\t\tfunction renderSectorIcon(iconUrl, extraStyle, iconColor) {\n\t\t\textraStyle = extraStyle || '';\n\t\t\ticonColor = iconColor || SECTOR_ICON_COLOR;\n\t\t\tvar safeUrl = escapeCssUrl(iconUrl);\n\t\t\treturn '<span class=\"acf-sector-icon\" style=\"display:inline-block;width:20px;height:20px;flex-shrink:0;'\n\t\t\t\t+ 'background-color:' + iconColor + ';'\n\t\t\t\t+ 'mask-image:url(\\'' + safeUrl + '\\');-webkit-mask-image:url(\\'' + safeUrl + '\\');'\n\t\t\t\t+ 'mask-size:contain;-webkit-mask-size:contain;'\n\t\t\t\t+ 'mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;'\n\t\t\t\t+ 'mask-position:center;-webkit-mask-position:center;'\n\t\t\t\t+ extraStyle + '\"><\/span>';\n\t\t}\n\n\t\tfunction escapeHtmlAttr(str) {\n\t\t\treturn String(str || '')\n\t\t\t\t.replace(\/&\/g, '&amp;')\n\t\t\t\t.replace(\/\"\/g, '&quot;')\n\t\t\t\t.replace(\/<\/g, '&lt;')\n\t\t\t\t.replace(\/>\/g, '&gt;');\n\t\t}\n\n\t\tfunction resolveSectorEntryFromSlug(slug) {\n\t\t\tvar found = findSectorBySlug(slug);\n\t\t\tif (found) {\n\t\t\t\treturn { name: found.data.name, icon: found.data.icon };\n\t\t\t}\n\t\t\treturn { name: slug.replace(\/-\/g, ' '), icon: '' };\n\t\t}\n\n\t\tfunction resolveSectorEntryFromName(name) {\n\t\t\tvar found = findSectorByName(name);\n\t\t\tif (found) {\n\t\t\t\treturn { name: found.data.name, icon: found.data.icon };\n\t\t\t}\n\t\t\treturn { name: name, icon: '' };\n\t\t}\n\n\t\tfunction resolveSectorEntryFromTerm(term) {\n\t\t\tvar found = findSectorFromTerm(term);\n\t\t\tvar text = term.innerText.trim();\n\t\t\tif (found) {\n\t\t\t\treturn { name: found.data.name, icon: found.data.icon };\n\t\t\t}\n\t\t\treturn resolveSectorEntryFromName(text);\n\t\t}\n\n\t\tfunction getSectorSlugsFromItem(item) {\n\t\t\tvar slugs = [];\n\t\t\tvar known = Object.keys(sectorIcons);\n\t\t\tif (!item || !item.classList) {\n\t\t\t\treturn slugs;\n\t\t\t}\n\t\t\titem.classList.forEach(function(cls) {\n\t\t\t\tif (cls.indexOf('sector-document-') === 0) {\n\t\t\t\t\tslugs.push(cls.replace('sector-document-', ''));\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (known.indexOf(cls) !== -1) {\n\t\t\t\t\tslugs.push(cls);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn slugs;\n\t\t}\n\n\t\tfunction collectSectorsFromList(sectorList, loopItem) {\n\t\t\tvar sectors = [];\n\t\t\tvar terms = Array.from(sectorList.querySelectorAll('.elementor-post-info__terms-list-item'));\n\n\t\t\tif (terms.length > 1) {\n\t\t\t\tterms.forEach(function(term) {\n\t\t\t\t\tsectors.push(resolveSectorEntryFromTerm(term));\n\t\t\t\t});\n\t\t\t} else if (terms.length === 1) {\n\t\t\t\tvar singleText = terms[0].innerText.trim();\n\t\t\t\tvar parts = singleText.split(\/\\s*,\\s*\/).filter(Boolean);\n\t\t\t\tif (parts.length > 1) {\n\t\t\t\t\tparts.forEach(function(part) {\n\t\t\t\t\t\tsectors.push(resolveSectorEntryFromName(part));\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tsectors.push(resolveSectorEntryFromTerm(terms[0]));\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tvar slugsFromItem = getSectorSlugsFromItem(loopItem);\n\t\t\tif (slugsFromItem.length > 0) {\n\t\t\t\tvar merged = [];\n\t\t\t\tslugsFromItem.forEach(function(slug, index) {\n\t\t\t\t\tvar fromSlug = resolveSectorEntryFromSlug(slug);\n\t\t\t\t\tvar existing = sectors[index];\n\t\t\t\t\tif (existing) {\n\t\t\t\t\t\tmerged.push({\n\t\t\t\t\t\t\tname: existing.name || fromSlug.name,\n\t\t\t\t\t\t\ticon: existing.icon || fromSlug.icon\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmerged.push(fromSlug);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif (merged.length > 0) {\n\t\t\t\t\tsectors = merged;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (sectors.length === 0) {\n\t\t\t\tsectorList.querySelectorAll('a[href*=\"sector-document\"]').forEach(function(link) {\n\t\t\t\t\tvar href = link.getAttribute('href') || '';\n\t\t\t\t\tvar match = href.match(\/sector-document\\\/([^\/?#]+)\/i);\n\t\t\t\t\tif (match && match[1]) {\n\t\t\t\t\t\tsectors.push(resolveSectorEntryFromSlug(decodeURIComponent(match[1])));\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tsectors = sectors.map(function(entry) {\n\t\t\t\tif (entry.icon) {\n\t\t\t\t\treturn entry;\n\t\t\t\t}\n\t\t\t\tvar found = findSectorByName(entry.name);\n\t\t\t\treturn found\n\t\t\t\t\t? { name: found.data.name, icon: found.data.icon }\n\t\t\t\t\t: entry;\n\t\t\t});\n\n\t\t\treturn sectors.filter(function(entry) {\n\t\t\t\treturn entry && entry.name;\n\t\t\t});\n\t\t}\n\n\t\tfunction renderSingleSectorPill(name, iconUrl) {\n\t\t\tvar iconHtml = iconUrl ? renderSectorIcon(iconUrl) : '';\n\t\t\treturn '<span class=\"elementor-post-info__terms-list-item cc-sector-single-item\">'\n\t\t\t\t+ '<span class=\"cc-sector-single\" style=\"'\n\t\t\t\t+ 'display:inline-flex;align-items:center;gap:6px;'\n\t\t\t\t+ 'padding:4px 10px;border-radius:8px;box-sizing:border-box;'\n\t\t\t\t+ 'background-color:' + SECTOR_PILL_BG + ';'\n\t\t\t\t+ 'border:0.5px solid ' + SECTOR_PILL_BORDER + ';'\n\t\t\t\t+ 'color:' + SECTOR_ICON_COLOR + ';'\n\t\t\t\t+ 'font-size:14px;font-weight:500;line-height:1.2;'\n\t\t\t\t+ '\">' + iconHtml + '<span class=\"cc-sector-single-label\">' + name + '<\/span><\/span><\/span>';\n\t\t}\n\n\t\tfunction applySectorIconsToRow(rowNode, selectedSectorSlug, loopItem) {\n\t\t\tvar lists = Array.from(rowNode.querySelectorAll('.elementor-post-info__terms-list'));\n\t\t\tvar sectorList = null;\n\n\t\t\tfor (var i = 0; i < lists.length; i++) {\n\t\t\t\tvar listTerms = Array.from(lists[i].querySelectorAll('.elementor-post-info__terms-list-item'));\n\t\t\t\tif (isSectorTermList(listTerms)) {\n\t\t\t\t\tsectorList = lists[i];\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!sectorList && lists.length >= 2) {\n\t\t\t\tsectorList = lists[1];\n\t\t\t}\n\n\t\t\tif (!sectorList) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar resolvedFilterSlug = resolveSectorSlug(selectedSectorSlug);\n\n\t\t\tif (resolvedFilterSlug && sectorIcons[resolvedFilterSlug]) {\n\t\t\t\tvar sectorData = sectorIcons[resolvedFilterSlug];\n\t\t\t\tsectorList.innerHTML = renderSingleSectorPill(sectorData.name, sectorData.icon);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar sectors = collectSectorsFromList(sectorList, loopItem);\n\t\t\tif (sectors.length === 0) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (sectors.length === 1) {\n\t\t\t\tsectorList.innerHTML = renderSingleSectorPill(sectors[0].name, sectors[0].icon);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsectorList.innerHTML = buildSectorIconStack(sectors, 4);\n\t\t}\n\n\t\tfunction createPlaceholderWidget() {\n\t\t\tvar div = document.createElement('div');\n\t\t\tdiv.className = 'elementor-element elementor-widget elementor-widget-text-editor cc-placeholder-col';\n\t\t\tdiv.innerHTML = '<div class=\"elementor-widget-container\"><span class=\"cc-cell-empty\">&mdash;<\/span><\/div>';\n\t\t\treturn div;\n\t\t}\n\n\t\tfunction normalizeRowColumns(containerNode) {\n\t\t\tvar titleWidget = containerNode.querySelector('.elementor-widget-theme-post-title, .elementor-widget-heading');\n\t\t\tif (!titleWidget) return;\n\t\t\tvar actualRow = titleWidget.parentElement;\n\t\t\tvar widgets = Array.from(actualRow.children).filter(function(el) {\n\t\t\t\treturn el.classList.contains('elementor-element');\n\t\t\t});\n\t\t\tvar textCount = 0;\n\t\t\tvar buttonCount = 0;\n\t\t\tvar firstText = null;\n\t\t\tfor (var i = 0; i < widgets.length; i++) {\n\t\t\t\tvar w = widgets[i];\n\t\t\t\tif (w.classList.contains('elementor-widget-text-editor')) {\n\t\t\t\t\ttextCount++;\n\t\t\t\t\tif (!firstText) firstText = w;\n\t\t\t\t}\n\t\t\t\tif (w.classList.contains('elementor-widget-button')) buttonCount++;\n\t\t\t}\n\t\t\tif (textCount < 2 && firstText) actualRow.insertBefore(createPlaceholderWidget(), firstText);\n\t\t\tif (buttonCount < 2) actualRow.appendChild(createPlaceholderWidget());\n\t\t}\n\n\t\tfunction ensureRowCellsNotEmpty(rowNode) {\n\t\t\trowNode.querySelectorAll('.elementor-widget').forEach(function(widget) {\n\t\t\t\tvar inner = widget.querySelector('.elementor-widget-container');\n\t\t\t\tif (!inner) return;\n\t\t\t\tvar hasContent = inner.textContent.trim() !== ''\n\t\t\t\t\t|| inner.querySelector('img, svg, a[href], .elementor-button')\n\t\t\t\t\t|| inner.querySelector('.elementor-post-info__terms-list-item')\n\t\t\t\t\t|| inner.querySelector('.acf-sector-icon-only, .cc-sector-stack, .acf-sector-icon');\n\t\t\t\tif (!hasContent) inner.innerHTML = '<span class=\"cc-cell-empty\">&mdash;<\/span>';\n\t\t\t});\n\t\t}\n\n\t\tfunction disableEmptyDownloadButtons(rowNode) {\n\t\t\trowNode.querySelectorAll('.elementor-button, a.elementor-button-link').forEach(function(btn) {\n\t\t\t\tvar href = btn.getAttribute('href');\n\t\t\t\tif (!href || href === '' || href === '#' || href === 'undefined') {\n\t\t\t\t\tbtn.classList.add('cc-btn-disabled');\n\t\t\t\t\tbtn.setAttribute('aria-disabled', 'true');\n\t\t\t\t\tbtn.removeAttribute('href');\n\t\t\t\t\tbtn.addEventListener('click', function(e) { e.preventDefault(); e.stopPropagation(); });\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfunction buildSectorIconStack(sectors, maxVisible) {\n\t\t\tvar html = '';\n\t\t\tsectors.forEach(function(sector, i) {\n\t\t\t\tvar ml = i === 0 ? '0' : '-6px';\n\t\t\t\tvar isHidden = i >= maxVisible;\n\t\t\t\tif (sector.icon) {\n\t\t\t\t\tvar safeIcon = escapeCssUrl(sector.icon);\n\t\t\t\t\tvar safeName = escapeHtmlAttr(sector.name);\n\t\t\t\t\thtml += '<span class=\"cc-sector-stack-icon\" data-sector=\"' + safeName + '\" title=\"' + safeName + '\" data-idx=\"' + i + '\" style=\"'\n\t\t\t\t\t\t+ (isHidden ? 'display:none;' : 'display:inline-flex;') + 'align-items:center;justify-content:center;'\n\t\t\t\t\t\t+ 'width:30px;height:30px;border-radius:8px;margin-left:' + ml + ';'\n\t\t\t\t\t\t+ 'background-color:#F1F5FF;border:0.5px solid #6B7694;padding:4px;box-sizing:border-box;'\n\t\t\t\t\t\t+ 'position:relative;z-index:' + (10 - i) + ';cursor:pointer;overflow:visible;\">'\n\t\t\t\t\t\t+ '<span style=\"display:block;width:100%;height:100%;background-color:' + SECTOR_ICON_COLOR + ';'\n\t\t\t\t\t\t+ 'mask-image:url(\\'' + safeIcon + '\\');-webkit-mask-image:url(\\'' + safeIcon + '\\');'\n\t\t\t\t\t\t+ 'mask-size:contain;-webkit-mask-size:contain;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;'\n\t\t\t\t\t\t+ 'mask-position:center;-webkit-mask-position:center;\"><\/span><\/span>';\n\t\t\t\t} else {\n\t\t\t\t\tvar safeNameFallback = escapeHtmlAttr(sector.name);\n\t\t\t\t\thtml += '<span class=\"cc-sector-stack-icon\" data-sector=\"' + safeNameFallback + '\" title=\"' + safeNameFallback + '\" data-idx=\"' + i + '\" style=\"'\n\t\t\t\t\t\t+ (isHidden ? 'display:none;' : 'display:inline-flex;') + 'align-items:center;justify-content:center;'\n\t\t\t\t\t\t+ 'width:30px;height:30px;border-radius:8px;margin-left:' + ml + ';'\n\t\t\t\t\t\t+ 'background-color:#E8ECF1;border:2px solid #fff;font-size:10px;font-weight:600;color:#2B463B;'\n\t\t\t\t\t\t+ 'box-sizing:border-box;position:relative;z-index:' + (10 - i) + ';cursor:pointer;\">'\n\t\t\t\t\t\t+ sector.name.substring(0, 2).toUpperCase() + '<\/span>';\n\t\t\t\t}\n\t\t\t});\n\t\t\tvar remaining = sectors.length - maxVisible;\n\t\t\tif (remaining > 0) {\n\t\t\t\thtml += '<span class=\"cc-sector-stack-badge\" data-max=\"' + maxVisible + '\" data-remaining=\"' + remaining + '\" style=\"'\n\t\t\t\t\t+ 'display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;'\n\t\t\t\t\t+ 'border-radius:8px;margin-left:-6px;background-color:#E8ECF1;border:2px solid #fff;'\n\t\t\t\t\t+ 'font-size:11px;font-weight:700;color:#2B463B;cursor:pointer;\">+' + remaining + '<\/span>';\n\t\t\t}\n\t\t\treturn '<div class=\"cc-sector-stack\" data-expanded=\"0\" style=\"display:inline-flex;align-items:center;height:28px;\">' + html + '<\/div>';\n\t\t}\n\n\t\tfunction getSelectedSectorSlug() {\n\t\t\tvar radio = document.querySelector('.search-filter-field--id-23 input[type=\"radio\"]:checked');\n\t\t\tif (!radio || !radio.value || radio.value === '' || radio.value === 'all') {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\treturn radio.value;\n\t\t}\n\n\t\tfunction getDocQueryRoot() {\n\t\t\treturn document.querySelector('.search-filter-query--id-10');\n\t\t}\n\n\t\tfunction removeDocGroupsOverlay() {\n\t\t\tvar root = getDocQueryRoot();\n\t\t\tif (!root) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\troot.querySelectorAll('.cc-doc-groups-overlay').forEach(function (el) {\n\t\t\t\tel.remove();\n\t\t\t});\n\t\t}\n\n\t\tfunction showDocGroupingLoading() {\n\t\t\tvar root = getDocQueryRoot();\n\t\t\tif (!root) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tremoveDocGroupsOverlay();\n\t\t\troot.classList.remove('cc-doc-groups-ready');\n\t\t\troot.classList.add('cc-doc-groups-pending');\n\t\t}\n\n\t\tfunction hideDocGroupingLoading() {\n\t\t\tvar root = getDocQueryRoot();\n\t\t\tif (!root) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tremoveDocGroupsOverlay();\n\t\t\troot.classList.remove('cc-doc-groups-pending');\n\t\t\trequestAnimationFrame(function () {\n\t\t\t\trequestAnimationFrame(function () {\n\t\t\t\t\troot.classList.add('cc-doc-groups-ready');\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\tfunction getDocLoopContainer() {\n\t\t\treturn document.querySelector('.search-filter-query--id-10 .elementor-loop-container');\n\t\t}\n\n\t\tfunction containerNeedsGrouping(container) {\n\t\t\tif (!container) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t\/\/ Rebuild whenever S&F left raw loop items in the container \u2014 even if stale\n\t\t\t\/\/ .cc-doc-group markup is still present from a previous render.\n\t\t\treturn !!container.querySelector('.e-loop-item');\n\t\t}\n\n\t\tfunction isDocumentLoopContainer(container) {\n\t\t\tvar items = container.querySelectorAll('.e-loop-item');\n\t\t\tfor (var i = 0; i < items.length; i++) {\n\t\t\t\tvar classes = items[i].classList;\n\t\t\t\tfor (var j = 0; j < classes.length; j++) {\n\t\t\t\t\tif (classes[j].indexOf('type-document-') === 0) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (items[i].querySelector('.elementor-widget-theme-post-title')) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\tfunction getRowNodeFromItem(item) {\n\t\t\tvar titleWidget = item.querySelector('.elementor-widget-theme-post-title');\n\t\t\tif (!titleWidget) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tvar row = titleWidget.closest('.e-con');\n\t\t\treturn row || titleWidget.parentElement;\n\t\t}\n\n\t\tfunction getRowPublicationTimestamp(rowNode) {\n\t\t\tif (!rowNode) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\t\/\/ La fecha vive en la columna \"Publication date\" \/ \"Fecha de publicaci\u00f3n\".\n\t\t\t\/\/ El atributo data-label puede no estar presente todav\u00eda cuando se construyen\n\t\t\t\/\/ los grupos (lo aplica otro script m\u00e1s tarde), as\u00ed que probamos varias formas\n\t\t\t\/\/ de localizar la celda y, como \u00faltimo recurso, escaneamos el texto de la fila.\n\t\t\tvar cell = rowNode.querySelector('[data-label=\"Fecha de publicaci\u00f3n\"], [data-label=\"Publication date\"]')\n\t\t\t\t|| rowNode.querySelector('[data-original-index=\"4\"]');\n\t\t\tvar text = cell ? (cell.innerText || cell.textContent || '').trim() : '';\n\t\t\tvar match = text.match(\/(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})\/);\n\t\t\tif (!match) {\n\t\t\t\tvar rowText = (rowNode.innerText || rowNode.textContent || '');\n\t\t\t\tmatch = rowText.match(\/(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})\/);\n\t\t\t}\n\t\t\tif (!match) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\tvar day = parseInt(match[1], 10);\n\t\t\tvar month = parseInt(match[2], 10);\n\t\t\tvar year = parseInt(match[3], 10);\n\t\t\tvar ts = new Date(year, month - 1, day).getTime();\n\t\t\treturn isNaN(ts) ? 0 : ts;\n\t\t}\n\n\t\tfunction sortDocRowsWithinGroups() {\n\t\t\tvar root = getDocQueryRoot();\n\t\t\tif (!root) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\troot.querySelectorAll('.cc-doc-group').forEach(function (group) {\n\t\t\t\tvar wraps = Array.prototype.slice.call(group.querySelectorAll('.cc-doc-row-wrap'));\n\t\t\t\tif (wraps.length < 2) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tvar parent = wraps[0].parentElement;\n\t\t\t\tif (!parent) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\twraps.sort(function (a, b) {\n\t\t\t\t\treturn getRowPublicationTimestamp(b) - getRowPublicationTimestamp(a);\n\t\t\t\t});\n\t\t\t\twraps.forEach(function (w) {\n\t\t\t\t\tparent.appendChild(w);\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\tvar rebuildTimers = [];\n\t\tvar pollTimer = null;\n\t\tvar pollAttempts = 0;\n\t\tvar maxPollAttempts = 80;\n\n\t\tfunction stopDocGroupsPoll() {\n\t\t\tif (pollTimer) {\n\t\t\t\tclearInterval(pollTimer);\n\t\t\t\tpollTimer = null;\n\t\t\t}\n\t\t\tpollAttempts = 0;\n\t\t}\n\n\t\tfunction pollUntilGrouped() {\n\t\t\tstopDocGroupsPoll();\n\t\t\tpollAttempts = 0;\n\t\t\tpollTimer = setInterval(function () {\n\t\t\t\tpollAttempts++;\n\t\t\t\tvar container = getDocLoopContainer();\n\t\t\t\tif (container && container.querySelector('.cc-doc-group')) {\n\t\t\t\t\tcontainer.setAttribute('data-doc-grouped', '1');\n\t\t\t\t\tif (typeof window.transformDocsMobile === 'function') {\n\t\t\t\t\t\twindow.transformDocsMobile();\n\t\t\t\t\t}\n\t\t\t\t\thideDocGroupingLoading();\n\t\t\t\t\tstopDocGroupsPoll();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (containerNeedsGrouping(container) && isDocumentLoopContainer(container)) {\n\t\t\t\t\tshowDocGroupingLoading();\n\t\t\t\t\tbuildTypeDocumentsGroups();\n\t\t\t\t}\n\t\t\t\tif (pollAttempts >= maxPollAttempts) {\n\t\t\t\t\thideDocGroupingLoading();\n\t\t\t\t\tstopDocGroupsPoll();\n\t\t\t\t}\n\t\t\t}, 250);\n\t\t}\n\n\t\tfunction scheduleRebuild() {\n\t\t\tshowDocGroupingLoading();\n\t\t\trebuildTimers.forEach(clearTimeout);\n\t\t\trebuildTimers = [];\n\t\t\tattachLoopContainerObserver();\n\t\t\tbuildTypeDocumentsGroups();\n\t\t\t[50, 150, 400, 800, 1500, 3000, 5000, 8000].forEach(function (delay) {\n\t\t\t\trebuildTimers.push(setTimeout(buildTypeDocumentsGroups, delay));\n\t\t\t});\n\t\t\tpollUntilGrouped();\n\t\t}\n\n\t\tfunction attachLoopContainerObserver() {\n\t\t\tvar root = document.querySelector('.search-filter-query--id-10');\n\t\t\tif (!root || root.__ccDocGroupsObserved) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\troot.__ccDocGroupsObserved = true;\n\t\t\tvar obsTimer = null;\n\t\t\tvar observer = new MutationObserver(function () {\n\t\t\t\tvar container = getDocLoopContainer();\n\t\t\t\tif (!container || !containerNeedsGrouping(container)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tclearTimeout(obsTimer);\n\t\t\t\tobsTimer = setTimeout(function () {\n\t\t\t\t\tvar c = getDocLoopContainer();\n\t\t\t\t\tif (c && containerNeedsGrouping(c) && isDocumentLoopContainer(c)) {\n\t\t\t\t\t\tshowDocGroupingLoading();\n\t\t\t\t\t\tbuildTypeDocumentsGroups();\n\t\t\t\t\t}\n\t\t\t\t}, 200);\n\t\t\t});\n\t\t\t\/\/ Observe the stable query root: S&F can swap the whole loop container on\n\t\t\t\/\/ re-render, which would orphan an observer bound to the container itself.\n\t\t\tobserver.observe(root, { childList: true, subtree: true });\n\t\t}\n\n\t\tvar isBuildingDocGroups = false;\n\n\t\tfunction collectRowSearchText(row) {\n\t\t\tvar parts = [];\n\n\t\t\tvar titleWidget = row.querySelector('.elementor-widget-theme-post-title');\n\t\t\tif (titleWidget) {\n\t\t\t\tparts.push(titleWidget.innerText || titleWidget.textContent || '');\n\t\t\t}\n\n\t\t\trow.querySelectorAll('.elementor-post-info__terms-list-item').forEach(function (term) {\n\t\t\t\tparts.push(term.textContent);\n\t\t\t\tif (term.dataset.ccProgrammeSlug) {\n\t\t\t\t\tparts.push(term.dataset.ccProgrammeSlug.replace(\/-\/g, ' '));\n\t\t\t\t}\n\t\t\t});\n\n\t\t\trow.querySelectorAll('.cc-sector-single-label').forEach(function (label) {\n\t\t\t\tparts.push(label.textContent);\n\t\t\t});\n\n\t\t\trow.querySelectorAll('.cc-sector-stack-icon[data-sector]').forEach(function (icon) {\n\t\t\t\tparts.push(icon.getAttribute('data-sector') || '');\n\t\t\t});\n\n\t\t\trow.querySelectorAll('.elementor-widget-text-editor .elementor-widget-container').forEach(function (cell) {\n\t\t\t\tif (cell.querySelector('.cc-cell-empty')) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tvar text = (cell.innerText || cell.textContent || '').trim();\n\t\t\t\tif (text && text !== '\u2014' && text !== '-') {\n\t\t\t\t\tparts.push(text);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\trow.querySelectorAll('.elementor-button-text').forEach(function (btn) {\n\t\t\t\tparts.push(btn.textContent);\n\t\t\t});\n\n\t\t\tif (!parts.length) {\n\t\t\t\tparts.push(row.innerText || row.textContent || '');\n\t\t\t}\n\n\t\t\treturn parts.join(' ');\n\t\t}\n\n\t\tfunction applyPillsAfterGrouping(container, attempt) {\n\t\t\tcontainer.querySelectorAll('.elementor-post-info__terms-list-item').forEach(function (span) {\n\t\t\t\tspan.removeAttribute('data-pill-applied');\n\t\t\t\tArray.from(span.classList).forEach(function (cls) {\n\t\t\t\t\tif (cls.indexOf('cc-pill-') === 0) {\n\t\t\t\t\t\tspan.classList.remove(cls);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t\tif (typeof window.ccApplyPillStyles === 'function') {\n\t\t\t\twindow.ccApplyPillStyles(container);\n\t\t\t\t$(document).trigger('cc:doc-groups-built', [container]);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ((attempt || 0) < 30) {\n\t\t\t\tsetTimeout(function () { applyPillsAfterGrouping(container, (attempt || 0) + 1); }, 100);\n\t\t\t}\n\t\t}\n\n\t\tfunction buildTypeDocumentsGroups() {\n\t\t\tif (isBuildingDocGroups) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar container = getDocLoopContainer();\n\t\t\tif (!containerNeedsGrouping(container)) {\n\t\t\t\tif (container && container.querySelector('.cc-doc-group')) {\n\t\t\t\t\thideDocGroupingLoading();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!isDocumentLoopContainer(container)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tshowDocGroupingLoading();\n\t\t\tisBuildingDocGroups = true;\n\n\t\t\ttry {\n\t\t\t\tvar items = container.querySelectorAll('.e-loop-item');\n\t\t\t\tif (items.length === 0) {\n\t\t\t\t\thideDocGroupingLoading();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar currentStyles = '';\n\t\t\t\tcontainer.querySelectorAll('style').forEach(function(st) { currentStyles += st.outerHTML; });\n\t\t\t\tif (currentStyles.trim() !== '') {\n\t\t\t\t\tcachedElementorStyles = currentStyles;\n\t\t\t\t}\n\n\t\t\t\tvar groups = {};\n\t\t\t\tvar loopMagicClass = '';\n\t\t\t\titems[0].classList.forEach(function(cls) {\n\t\t\t\t\tif (cls.indexOf('elementor-') === 0 && cls !== 'elementor-loop-item') {\n\t\t\t\t\t\tloopMagicClass = cls;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif (loopMagicClass) {\n\t\t\t\t\tcachedMagicClass = loopMagicClass;\n\t\t\t\t}\n\n\t\t\t\tvar selectedSectorSlug = getSelectedSectorSlug();\n\n\t\t\t\titems.forEach(function(item) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tvar slug = 'uncategorized';\n\t\t\t\t\t\titem.classList.forEach(function(cls) {\n\t\t\t\t\t\t\tif (cls.indexOf('type-document-') === 0) {\n\t\t\t\t\t\t\t\tslug = cls.replace('type-document-', '');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tif (!groups[slug]) {\n\t\t\t\t\t\t\tgroups[slug] = { items: [] };\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tvar rowNode = getRowNodeFromItem(item);\n\t\t\t\t\t\tif (!rowNode) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tnormalizeRowColumns(rowNode);\n\t\t\t\t\t\tnormalizeProgrammeColumn(rowNode, item);\n\t\t\t\t\t\tapplySectorIconsToRow(rowNode, selectedSectorSlug, item);\n\n\t\t\t\t\t\tensureRowCellsNotEmpty(rowNode);\n\t\t\t\t\t\tdisableEmptyDownloadButtons(rowNode);\n\t\t\t\t\t\trowNode.classList.add('cc-doc-table-row', 'cc-doc-row');\n\t\t\t\t\t\trowNode.setAttribute('data-cc-search-text', collectRowSearchText(rowNode));\n\t\t\t\t\t\tgroups[slug].items.push({\n\t\t\t\t\t\t\thtml: '<div class=\"e-con e-child cc-doc-row-wrap\">' + rowNode.outerHTML + '<\/div>',\n\t\t\t\t\t\t\tts: getRowPublicationTimestamp(rowNode)\n\t\t\t\t\t\t});\n\t\t\t\t\t} catch (err) {\n\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tvar baseOrder = [\n\t\t\t\t\t'certification-framework', 'marco-de-certificacion',\n\t\t\t\t\t'methodologies', 'metodologias',\n\t\t\t\t\t'tools', 'herramientas',\n\t\t\t\t\t'guides', 'guias',\n\t\t\t\t\t'project-formulation-pre-registration', 'formulacion-del-proyecto-y-preinscripcion',\n\t\t\t\t\t'monitoring-implementation', 'supervision-e-implementacion',\n\t\t\t\t\t'validation-verification', 'validacion-y-verificacion',\n\t\t\t\t\t'inactive', 'inactivo'\n\t\t\t\t];\n\n\t\t\t\tvar sortedSlugs = baseOrder.filter(function(s) { return groups[s]; }).concat(\n\t\t\t\t\tObject.keys(groups).filter(function(s) { return baseOrder.indexOf(s) === -1; })\n\t\t\t\t);\n\n\t\t\t\tvar newHTML = '';\n\t\t\t\tsortedSlugs.forEach(function(groupSlug) {\n\t\t\t\t\tvar group = groups[groupSlug];\n\t\t\t\t\tgroup.items.sort(function(a, b) {\n\t\t\t\t\t\treturn b.ts - a.ts;\n\t\t\t\t\t});\n\t\t\t\t\tvar rawName = groupSlug.replace(\/-\/g, ' ').replace(\/\\b\\w\/g, function(l) { return l.toUpperCase(); });\n\t\t\t\t\tvar info = typeDocData[groupSlug] || { name: rawName, description: '', icon: '' };\n\t\t\t\t\tvar iconCSS = info.icon\n\t\t\t\t\t\t? \"background-color:currentColor;mask-image:url('\" + info.icon + \"');-webkit-mask-image:url('\" + info.icon + \"');\"\n\t\t\t\t\t\t: 'background-color:#BAC2D3;';\n\n\t\t\t\t\tnewHTML += `\n\t\t\t\t\t\t<div class=\"cc-doc-group\">\n\t\t\t\t\t\t\t<div class=\"cc-doc-header\">\n\t\t\t\t\t\t\t\t<div class=\"cc-doc-top\">\n\t\t\t\t\t\t\t\t\t<div class=\"cc-doc-title-box\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"cc-doc-icon\"><span class=\"acf-icon\" style=\"${iconCSS}\"><\/span><\/div>\n\t\t\t\t\t\t\t\t\t\t<h3>${info.name}<\/h3>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"cc-doc-toggle\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"cc-doc-plus\"><svg width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#2B463B\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"><\/circle><line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"16\"><\/line><line x1=\"8\" y1=\"12\" x2=\"16\" y2=\"12\"><\/line><\/svg><\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"cc-doc-minus\"><svg width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#2B463B\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"><\/circle><line x1=\"8\" y1=\"12\" x2=\"16\" y2=\"12\"><\/line><\/svg><\/span>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"cc-doc-body\" style=\"display:none;\">\n\t\t\t\t\t\t\t\t${info.description ? `<div class=\"cc-doc-desc\">${info.description}<\/div>` : ''}\n\t\t\t\t\t\t\t\t<div class=\"elementor ${cachedMagicClass}\" style=\"width: 100%;\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-element table-directory-cont e-flex e-con-boxed e-con e-parent\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"e-con-inner\" style=\"gap:0;\">\n\t\t\t\t\t\t\t\t\t\t\t${docHeaderGlobalHTML}\n\t\t\t\t\t\t\t\t\t\t\t${group.items.map(function(item) { return item.html; }).join('')}\n\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>`;\n\t\t\t\t});\n\n\t\t\t\tif (!newHTML) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tcontainer.innerHTML = cachedElementorStyles + newHTML;\n\t\t\t\tcontainer.classList.remove('elementor-grid');\n\t\t\t\tcontainer.setAttribute('data-doc-grouped', '1');\n\n\t\t\t\tapplyPillsAfterGrouping(container);\n\n\t\t\t\tif (typeof window.transformDocsMobile === 'function') {\n\t\t\t\t\twindow.transformDocsMobile();\n\t\t\t\t}\n\n\t\t\t\tsortDocRowsWithinGroups();\n\n\t\t\t\tcontainer.querySelectorAll('.cc-doc-row').forEach(function (row) {\n\t\t\t\t\trow.setAttribute('data-cc-search-text', collectRowSearchText(row));\n\t\t\t\t});\n\n\t\t\t\t$(document).trigger('cc:doc-groups-built', [container]);\n\n\t\t\t\thideDocGroupingLoading();\n\t\t\t\tstopDocGroupsPoll();\n\n\t\t\t\t$(container).off('click', '.cc-sector-stack-badge').on('click', '.cc-sector-stack-badge', function(e) {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\tvar stack = $(this).closest('.cc-sector-stack');\n\t\t\t\t\tvar isExpanded = stack.attr('data-expanded') === '1';\n\t\t\t\t\tvar badge = $(this);\n\t\t\t\t\tvar maxVisible = parseInt(badge.attr('data-max'), 10);\n\t\t\t\t\tvar remaining = parseInt(badge.attr('data-remaining'), 10);\n\t\t\t\t\tif (!isExpanded) {\n\t\t\t\t\t\tstack.find('.cc-sector-stack-icon').each(function() {\n\t\t\t\t\t\t\tif (parseInt($(this).attr('data-idx'), 10) >= maxVisible) {\n\t\t\t\t\t\t\t\t$(this).css({ display: 'inline-flex', marginLeft: '-6px' });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tbadge.html('&times;').css({ background: '#2B463B', color: '#fff' });\n\t\t\t\t\t\tstack.attr('data-expanded', '1');\n\t\t\t\t\t} else {\n\t\t\t\t\t\tstack.find('.cc-sector-stack-icon').each(function() {\n\t\t\t\t\t\t\tif (parseInt($(this).attr('data-idx'), 10) >= maxVisible) {\n\t\t\t\t\t\t\t\t$(this).css('display', 'none');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tbadge.html('+' + remaining).css({ background: '#E8ECF1', color: '#2B463B' });\n\t\t\t\t\t\tstack.attr('data-expanded', '0');\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\t$('.cc-doc-header').off('click').on('click', function() {\n\t\t\t\t\tvar body = $(this).next('.cc-doc-body');\n\t\t\t\t\tvar header = $(this);\n\t\t\t\t\tif (body.is(':visible')) {\n\t\t\t\t\t\tbody.slideUp(250, function() { header.removeClass('is-open'); });\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbody.slideDown(250, function() { header.addClass('is-open'); });\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t} catch (buildErr) {\n\t\t\t\thideDocGroupingLoading();\n\t\t\t} finally {\n\t\t\t\tisBuildingDocGroups = false;\n\t\t\t}\n\t\t}\n\n\t\twindow.ccRebuildDocGroups = buildTypeDocumentsGroups;\n\n\t\tfunction getDocGroupsStatus() {\n\t\t\tvar root = document.querySelector('.search-filter-query--id-10');\n\t\t\tvar container = getDocLoopContainer();\n\t\t\treturn {\n\t\t\t\tqueryRoot: !!root,\n\t\t\t\tcontainer: !!container,\n\t\t\t\tloopItems: root ? root.querySelectorAll('.e-loop-item').length : 0,\n\t\t\t\tgroups: root ? root.querySelectorAll('.cc-doc-group').length : 0,\n\t\t\t\trows: root ? root.querySelectorAll('.cc-doc-row').length : 0,\n\t\t\t\tneedsGrouping: container ? containerNeedsGrouping(container) : false,\n\t\t\t\tisDocLoop: container ? isDocumentLoopContainer(container) : false\n\t\t\t};\n\t\t}\n\n\t\tfunction ensureDocGroupsBuilt() {\n\t\t\tvar container = getDocLoopContainer();\n\t\t\tif (!container) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (container.querySelector('.cc-doc-group')) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (containerNeedsGrouping(container) && isDocumentLoopContainer(container)) {\n\t\t\t\tbuildTypeDocumentsGroups();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\tvar docGroupsWatchdogTimer = null;\n\n\t\tfunction stopDocGroupsWatchdog() {\n\t\t\tif (docGroupsWatchdogTimer) {\n\t\t\t\tclearInterval(docGroupsWatchdogTimer);\n\t\t\t\tdocGroupsWatchdogTimer = null;\n\t\t\t}\n\t\t}\n\n\t\tfunction startDocGroupsWatchdog() {\n\t\t\t\/\/ Persistent watchdog: S&F\/Elementor can re-render the loop AFTER we group it,\n\t\t\t\/\/ leaving fresh ungrouped items behind. Keep regrouping whenever that happens.\n\t\t\tif (docGroupsWatchdogTimer) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tdocGroupsWatchdogTimer = setInterval(function () {\n\t\t\t\tvar container = getDocLoopContainer();\n\t\t\t\tif (!container) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (container.querySelector('.cc-doc-group')) {\n\t\t\t\t\thideDocGroupingLoading();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (containerNeedsGrouping(container) && isDocumentLoopContainer(container)) {\n\t\t\t\t\tbuildTypeDocumentsGroups();\n\t\t\t\t}\n\t\t\t}, 400);\n\t\t}\n\n\t\twindow.ccEnsureDocGroups = ensureDocGroupsBuilt;\n\t\twindow.ccDocGroupsStatus = getDocGroupsStatus;\n\t\twindow.ccStartDocGroupsWatchdog = startDocGroupsWatchdog;\n\n\t\t$(document).on('sf:ajaxstart', function () {\n\t\t\tvar c = getDocLoopContainer();\n\t\t\tif (c) {\n\t\t\t\tc.removeAttribute('data-doc-grouped');\n\t\t\t}\n\t\t\tshowDocGroupingLoading();\n\t\t});\n\n\t\t$(document).on('sf:ajaxfinish sf:ajaxformfinish', function () {\n\t\t\tshowDocGroupingLoading();\n\t\t\tscheduleRebuild();\n\t\t\tattachLoopContainerObserver();\n\t\t\tstartDocGroupsWatchdog();\n\t\t\tsetTimeout(function () {\n\t\t\t\tvar c = getDocLoopContainer();\n\t\t\t\tif (c && !c.querySelector('.e-loop-item') && !c.querySelector('.cc-doc-group')) {\n\t\t\t\t\thideDocGroupingLoading();\n\t\t\t\t}\n\t\t\t}, 1500);\n\t\t});\n\t\tdocument.addEventListener('searchFilterComplete', function () {\n\t\t\tshowDocGroupingLoading();\n\t\t\tscheduleRebuild();\n\t\t\tattachLoopContainerObserver();\n\t\t});\n\n\t\t$(document).on('change', '.search-filter-field--id-23 input[type=\"radio\"]', scheduleRebuild);\n\t\t$(document).on('change', '[data-search-filter-id=\"21\"] input', scheduleRebuild);\n\t\t$(document).on('click', '.search-filter-input-group.search-filter-field__input .search-filter-input-radio', function () {\n\t\t\tsetTimeout(scheduleRebuild, 150);\n\t\t});\n\n\t\tfunction bootDocGroups() {\n\t\t\tremoveDocGroupsOverlay();\n\t\t\tshowDocGroupingLoading();\n\t\t\tscheduleRebuild();\n\t\t\tattachLoopContainerObserver();\n\t\t\tstartDocGroupsWatchdog();\n\t\t}\n\n\t\t$(document).ready(bootDocGroups);\n\t\t$(window).on('load', bootDocGroups);\n\n\t\t$(document).ready(function () {\n\t\t\t$(document).on('click', function (e) {\n\t\t\t\tif (!$(e.target).closest('.cc-sector-stack').length) {\n\t\t\t\t\t$('.cc-sector-stack[data-expanded=\"1\"]').each(function () {\n\t\t\t\t\t\tvar stack = $(this);\n\t\t\t\t\t\tvar badge = stack.find('.cc-sector-stack-badge');\n\t\t\t\t\t\tvar maxVisible = parseInt(badge.attr('data-max'), 10);\n\t\t\t\t\t\tvar remaining  = parseInt(badge.attr('data-remaining'), 10);\n\t\t\t\t\t\tstack.find('.cc-sector-stack-icon').each(function () {\n\t\t\t\t\t\t\tif (parseInt($(this).attr('data-idx'), 10) >= maxVisible) {\n\t\t\t\t\t\t\t\t$(this).css('display', 'none');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tbadge.html('+' + remaining).css({ background: '#E8ECF1', color: '#2B463B' });\n\t\t\t\t\t\tstack.attr('data-expanded', '0');\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\t\treturn true;\n\t\t}\n\n\t\tif (document.readyState === 'loading') {\n\t\t\tdocument.addEventListener('DOMContentLoaded', tryBootDocGroupsScript);\n\t\t} else {\n\t\t\ttryBootDocGroupsScript();\n\t\t}\n\t\twindow.addEventListener('load', tryBootDocGroupsScript);\n\n\t\tvar bootAttempts = 0;\n\t\tfunction tryBootDocGroupsScript() {\n\t\t\tif (bootDocGroupsScript()) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (bootAttempts < 50) {\n\t\t\t\tbootAttempts++;\n\t\t\t\tsetTimeout(tryBootDocGroupsScript, 100);\n\t\t\t}\n\t\t}\n\t})();\n\t<\/script>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c5d0bc8 e-con-full e-flex e-con e-child\" data-id=\"c5d0bc8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3d6d888 elementor-widget elementor-widget-heading\" data-id=\"3d6d888\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Documentos disponibles para: Todo<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0b62a7d elementor-widget elementor-widget-text-editor\" data-id=\"0b62a7d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Estas categor\u00edas de documentos se muestran en funci\u00f3n del programa y sector que seleccionaste.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"search-filter-query--id-10 elementor-element elementor-element-2327095 elementor-grid-1 elementor-widget__width-inherit elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-widget elementor-widget-loop-grid\" data-id=\"2327095\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;template_id&quot;:6720,&quot;columns&quot;:1,&quot;_skin&quot;:&quot;post&quot;,&quot;columns_tablet&quot;:&quot;2&quot;,&quot;columns_mobile&quot;:&quot;1&quot;,&quot;edit_handle_selector&quot;:&quot;[data-elementor-type=\\&quot;loop-item\\&quot;]&quot;,&quot;row_gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_widescreen&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_tablet_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_mobile_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"loop-grid.post\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"e-loop-nothing-found-message\">\n\t\t\t\t\t<div class=\"e-loop-nothing-found-message__text\">\n\t\t\t\tIt seems we can\u2019t find what you\u2019re looking for.\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Documentos Nos aseguramos de que todos los documentos clave sean p\u00fablicos para que la certificaci\u00f3n sea abierta, transparente y f\u00e1cil de seguir. Aqu\u00ed encontrar\u00e1s todo, desde plantillas hasta herramientas de monitoreo, todo en un solo lugar y disponible tanto en ingl\u00e9s como en espa\u00f1ol para mejorar la accesibilidad para todos los usuarios. Explora documentos por [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-5985","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/pages\/5985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/comments?post=5985"}],"version-history":[{"count":5,"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/pages\/5985\/revisions"}],"predecessor-version":[{"id":11240,"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/pages\/5985\/revisions\/11240"}],"wp:attachment":[{"href":"https:\/\/cercarbono.com\/es\/wp-json\/wp\/v2\/media?parent=5985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}