Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> originalFile.dateCreated  [in template "20099#20135#14588694" at line 440, column 53]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign createDate = originalFile.dat...  [in template "20099#20135#14588694" at line 440, column 31]
----
1<#-- Conteúdo Web -> Templates: Site de Crise - Funções gerais--> 
2<#include "${templatesPath}/1975398" /> 
3 
4<#function getNodesByLabel fieldList parentNode label> 
5    <#assign result = []/> 
6    <#attempt> 
7        <#assign groupId =  getIdFromFieldName(fieldList, label) /> 
8        <#assign xSeletorCaminho = saxReaderUtil.createXPath("dynamic-element[@name='${groupId}' ]") /> 
9        <#assign result = xSeletorCaminho.selectNodes(parentNode) /> 
10        <#return result /> 
11        <#recover> 
12            <#return result /> 
13    </#attempt> 
14</#function> 
15 
16<#function findVocabulary vocabularyName vocabularies> 
17    <#assign vocabularyNameLowerCase = vocabularyName?lower_case> 
18    <#list vocabularies as vocabulary> 
19        <#if vocabulary.name?lower_case == vocabularyNameLowerCase> 
20            <#return vocabulary> 
21        </#if> 
22    </#list> 
23    <#return {}> 
24</#function> 
25 
26<#-- ############# Conteúdo Web -> Templates: Site de Crise - Include de templates #################################### --> 
27<#function getSiteUrl> 
28    <#assign portalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"]> 
29    <#if layout?? && layout?has_content> 
30        <#return portalUtil.getLayoutFriendlyURL(layout, themeDisplay)?replace(layout.getFriendlyURL(), "")> 
31    </#if> 
32    <#return portalUtil.getLayoutFriendlyURL(layout, themeDisplay)> 
33</#function> 
34 
35<#function getSiteName> 
36    <#return layout.getGroup().getDescriptiveName(locale)> 
37</#function> 
38 
39<#function mountUrlToPage targetPage> 
40    <#return getSiteUrl()+ "/" + targetPage> 
41</#function> 
42<#-- ################################################################################################################## --> 
43 
44 
45<#assign 
46journalArticleService  = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") 
47assetVocabularyService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") 
48categoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") 
49vocabularies = assetVocabularyService.getGroupVocabularies(groupId) 
50tagsLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetTagLocalService") 
51tagVocabulary = findVocabulary("Tag", vocabularies) 
52flagVocabulary = findVocabulary("Flag", vocabularies) 
53tagCategoryTitles = extractVocabularyTitles(tagVocabulary) 
54flagCategoryTitles = extractVocabularyTitles(flagVocabulary) 
55assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") 
56fileEntryService = staticUtil["com.liferay.document.library.kernel.service.DLFileEntryLocalServiceUtil"] 
57layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") 
58assetCategoryPropService = serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") 
59/> 
60 
61	 
62	<#function getAssetEntryFromRequest assetEntryLocalService> 
63    <#assign assetEntry = ""> 
64    <#attempt > 
65        <#assign infoItemReference = Request.INFO_ITEM_DETAILS.getInfoItemReference() /> 
66        <#assign className = infoItemReference.getClassName() /> 
67        <#assign infoItem = Request.INFO_ITEM /> 
68        <#assign resourcePrimKey = infoItem.resourcePrimKey /> 
69        <#assign assetEntry = assetEntryLocalService.getEntry(className, resourcePrimKey) /> 
70        <#return assetEntry> 
71        <#recover > 
72            <#return ""> 
73    </#attempt> 
74    <#return ""> 
75</#function> 
76	 
77<#assign newsJournalArticle = ""> 
78<#assign assetEntry = getAssetEntryFromRequest(assetEntryLocalService)> 
79<#if assetEntry?? && assetEntry?has_content> 
80    <#assign newsJournalArticle = journalArticleService.fetchLatestArticle(assetEntry.classPK)/> 
81</#if> 
82 
83<#function getSingleNode name root> 
84    <#attempt> 
85        <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='${name}']/dynamic-content[@language-id='${locale}']") /> 
86        <#return xPathSelector.selectSingleNode( root ) /> 
87        <#recover> 
88            <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='${name}']") /> 
89            <#return xPathSelector.selectSingleNode( root ) /> 
90    </#attempt> 
91</#function> 
92 
93 
94<#function getFileFromXML fieldId parentNode fileEntryService> 
95 
96    <#assign info = {"url": "", "alt": "", "mimeType" :"", "name": "", "fileEntryId": "", "title": ""}> 
97 
98    <#assign jsonString = getSingleNodeString(fieldId, parentNode)/> 
99    <#if !jsonString?? || !jsonString?has_content> 
100        <#return info/> 
101    </#if> 
102 
103    <#assign json = jsonFactoryUtil.createJSONObject(jsonString) /> 
104    <#if !json?? || !json?has_content> 
105        <#return info/> 
106    </#if> 
107 
108    <#attempt > 
109        <#assign fileId = ""> 
110        <#if json.fileEntryId??> 
111            <#assign fileId = json.fileEntryId> 
112        <#else > 
113            <#if json.classPK??> 
114                <#assign fileId = json.classPK> 
115            </#if> 
116        </#if> 
117        <#if !fileId?has_content> 
118            <#return info> 
119        </#if> 
120        <#assign fileEntry = fileEntryService.fetchDLFileEntry(fileId?number) /> 
121        <#if !fileEntry?? > 
122            <#return info/> 
123        </#if> 
124        <#recover > 
125            <#return info/> 
126    </#attempt> 
127 
128    <#assign alt = ""> 
129    <#if json.description??> 
130        <#assign alt = json.description?trim> 
131    </#if> 
132 
133    <#assign info = {"url": "/documents/" + json.groupId + "/0/" + fileEntry.getTitle() + "/" + json.uuid, 
134          "alt": alt, 
135					"mimeType" : fileEntry.getMimeType(), 
136          "fileEntryId": fileId, 
137					"name" : json.name, 
138					"title" : json.title 
139    }> 
140    <#return info/> 
141</#function> 
142	 
143<#assign editorialVocabulary = findVocabulary("Editorial", vocabularies)/> 
144 
145 
146<#assign EMPTY_FILE_INFO = {"url": "", 
147"alt": "", 
148"fileEntryId": "", 
149"mimetype": "", 
150"fileExtension": "", 
151"restResponse": {}, 
152"dateCreated": "", 
153"dateModified": "", 
154"adaptedImages" : ""} /> 
155 
156<#function extractFileInfoFromJsonResponse jsonResponse> 
157    <#assign info = EMPTY_FILE_INFO /> 
158    <#if !jsonResponse?? || !jsonResponse?has_content || !jsonResponse.fileName??> 
159        <#return info/> 
160    </#if> 
161 
162    <#assign fileUrl = themeDisplay.getPortalURL() + jsonResponse.contentUrl/> 
163    <#assign adaptedImages = [] /> 
164    <#if jsonResponse["adaptedImages"]??> 
165        <#assign adaptedImages = jsonResponse.adaptedImages /> 
166    </#if> 
167 
168    <#assign info = {"url": fileUrl, 
169    "alt": jsonResponse.description, 
170    "fileEntryId": jsonResponse.id, 
171    "mimetype": jsonResponse.encodingFormat, 
172    "fileExtension": jsonResponse.fileExtension, 
173    "restResponse": jsonResponse, 
174    "dateCreated": jsonResponse.dateCreated, 
175    "dateModified": jsonResponse.dateModified, 
176    "adaptedImages": adaptedImages 
177    }> 
178    <#return info/> 
179</#function> 
180 
181<#function getFileFromRest fileEntryId> 
182    <#return restClient.get("/headless-delivery/v1.0/documents/${fileEntryId}") /> 
183</#function> 
184 
185<#function getSmallestAdaptedMedia imageJson> 
186    <#if !imageJson?? || !imageJson["adaptedImageList"]?? || !imageJson.adaptedImageList?is_sequence> 
187        <#return ""/> 
188    </#if> 
189 
190    <#assign mediaWidth = 300 /> 
191    <#list adaptedImageList.adaptedImageList?filter(f -> f.width == mediaWidth)  as adaptedImage> 
192        <#return themeDisplay.getPortalURL() + "/documents/" + groupId + "/" + adaptedImage.externalReferenceCode + "?t=" + .now?string["HHmmssSSS"] /> 
193    </#list> 
194 
195    <#return "" /> 
196</#function> 
197 
198<#function getBiggestAdaptedMedia adaptedImageList> 
199    <#if !adaptedImageList?? || !adaptedImageList?is_sequence> 
200        <#return ""/> 
201    </#if> 
202 
203    <#assign mediaWidth = -1 /> 
204    <#assign url = "" /> 
205    <#list adaptedImageList as adaptedImage> 
206        <#if adaptedImage.width?? && adaptedImage.width?number gt mediaWidth && adaptedImage.contentUrl??> 
207            <#assign mediaWidth = adaptedImage.width?number /> 
208            <#assign url = adaptedImage.contentUrl /> 
209        </#if> 
210    </#list> 
211    <#return url /> 
212</#function> 
213 
214<#function getFileFromJsonItem fileJson> 
215    <#assign info = EMPTY_FILE_INFO /> 
216    <#if !fileJson?has_content> 
217        <#return info/> 
218    </#if> 
219 
220    <#assign fileData = ""/> 
221    <#if fileJson.document??> 
222        <#assign fileData = fileJson.document /> 
223    <#elseif fileJson.image??> 
224        <#assign fileData = fileJson.image /> 
225    </#if> 
226 
227    <#if !fileData?has_content > 
228        <#return info/> 
229    </#if> 
230 
231    <#assign fileEntryId = fileData.id /> 
232    <#return getFileFromRest(fileEntryId)/> 
233</#function> 
234 
235<#function formatDate date> 
236  <#attempt> 
237    <#if !date ?? || !date?has_content> 
238        <#return ""> 
239    </#if> 
240    <#if locale == "pt_BR"> 
241        <#return date?datetime?string("dd/MM/yyyy")> 
242    <#else> 
243        <#return date?datetime?string("yyyy.MM.dd")> 
244    </#if> 
245    <#recover> 
246      <#return ""> 
247  </#attempt> 
248</#function> 
249 
250<#if newsJournalArticle?? && newsJournalArticle?has_content> 
251 
252    <div class="breadcrumb-breakpoint breakpoint"> 
253        <div class="breadcrumb-col col-3-11 md-col-1-8 sm-col-1-4"> 
254            <#assign homeURL = "/" /> 
255 
256            <#if currentURL?contains('webserver')> 
257                <#assign homeURL = "/web/agencia/" /> 
258            </#if> 
259 
260            <a href="${homeURL}" class="breadcrumb-page text previous-page paragraph-micro-regular" tabindex="0"> 
261                <span class="breadcrumb-text-truncate" original-text="Home">Home</span> 
262                <div class="icon"></div> 
263            </a> 
264 
265            <#assign breadcrumbEditorialCategory = getFirstCategoryObjectOfVocabulary(assetEntry, editorialVocabulary) /> 
266            <#if breadcrumbEditorialCategory?? && breadcrumbEditorialCategory?has_content> 
267                 
268							 
269							<#if assetCategoryPropService.fetchCategoryProperty(breadcrumbEditorialCategory.getCategoryId(),"url_amigavel_pagina_publica")??> 
270                    <#assign property = assetCategoryPropService.fetchCategoryProperty(breadcrumbEditorialCategory.getCategoryId(),"url_amigavel_pagina_publica") /> 
271                    <#assign propertyValue = property.getValue() /> 
272                    <#assign categoryURL = homeURL + propertyValue /> 
273                <#else> 
274                    <#assign categoryURL = homeURL + "listar-editoria?category=" + breadcrumbEditorialCategory.getCategoryId()/> 
275                </#if> 
276							 
277                <a href="${categoryURL}" class="breadcrumb-page text previous-page paragraph-micro-regular" 
278                   tabindex="0"> 
279                    <span class="breadcrumb-text-truncate" 
280                          original-text="${breadcrumbEditorialCategory.getTitle(locale)}">${breadcrumbEditorialCategory.getTitle(locale)}</span> 
281                    <div class="icon"></div> 
282                </a> 
283            </#if> 
284 
285            <span original-text="${newsJournalArticle.getTitle(locale)}" 
286                  class="breadcrumb-page text active-page active paragraph-micro-bold">${newsJournalArticle.getTitle(locale)}</span> 
287        </div> 
288    </div> 
289 
290    <div class="ptb-news__read-news"> 
291        <div class="ptb-news__read-news-post "> 
292            <div class="ptb-news__read-content"> 
293                <#assign 
294                ddmStructure = newsJournalArticle.getDDMStructure() 
295                fieldList = getFieldListByStructure(ddmStructure) 
296                xmlArticle = newsJournalArticle.getDocument().getRootElement() 
297
298 
299                <#assign 
300                <#-- Título principal da notícia --> 
301                mainHeadlineOfTheNews = newsJournalArticle.getTitle(locale, true) 
302                <#-- Título de destaque da notícia --> 
303                featuredNewsHeadline = extractFeaturedNewsHeadline(fieldList, xmlArticle) 
304                <#-- Sumário da notícia --> 
305                newsSummary = extractNewsSummary(fieldList, xmlArticle) 
306                <#-- Data de publicação da notícia --> 
307                lastPublishDate = extractPublishDate(newsJournalArticle) 
308                <#-- Data de criação da notícia --> 
309                createDate = newsJournalArticle.getCreateDate() 
310
311 
312 
313                <#-- Flag da notícia ----------------------------------------------------------------------------------> 
314                <#assign flag = getFirstCategoryTitle(newsJournalArticle, flagCategoryTitles, categoryLocalService)> 
315 
316                <#-- Url amigável da notícia para visualização em DisplayPage -----------------------------------------> 
317                <#assign newsJournalArticleFriendlyUrl = themeDisplay.getPortalURL() + themeDisplay.getPathFriendlyURLPublic() + layout.getGroup().friendlyURL + "/w/" + newsJournalArticle.getUrlTitle()> 
318                <#assign newsJournalArticleFriendlyUrl = "/"> 
319                <#if themeDisplay.getPortalURL()?contains("webserver")> 
320                    <#assign newsJournalArticleFriendlyUrl = themeDisplay.getPortalURL() + themeDisplay.getPathFriendlyURLPublic() + layout.getGroup().friendlyURL + "/w/" + newsJournalArticle.getUrlTitle()> 
321                <#else> 
322                    <#assign newsJournalArticleFriendlyUrl = themeDisplay.getPortalURL() + "/w/" + newsJournalArticle.getUrlTitle()> 
323                </#if> 
324 
325                <#-- Conteúdo da notícia ------------------------------------------------------------------------------> 
326                <#assign newsContent = getFieldValue(fieldList, xmlArticle, "Corpo da notícia")> 
327 
328                <#-- Seção do áudio para o conteúdo da notícia --------------------------------------------------------> 
329                <#assign audios = [] 
330                audioIdentifierFieldSetList = getNodes("Fieldset65862311", xmlArticle) 
331
332                <#list audioIdentifierFieldSetList as audioIdentifierFieldSet> 
333                    <#assign 
334                    <#-- Grupo com as informações de url e legenda do áudio --> 
335                    audioInfoFieldSet = getGroupNode("Fieldset24035689",audioIdentifierFieldSet)> 
336                    <#assign 
337                    externalAudioUrl = getFieldValue(fieldList, audioInfoFieldSet, "URL externa do áudio") 
338                    internalAudioUrl = getFileFromXML("DocumentLibrary24170668", audioInfoFieldSet, fileEntryService) 
339                    audioLegend = getFieldValue(fieldList, audioInfoFieldSet, "Legenda do áudio")> 
340 
341                    <#if externalAudioUrl?has_content || internalAudioUrl.url?has_content > 
342                        <#assign audios += [{ 
343                        "id": getFieldValue(fieldList, audioIdentifierFieldSet, "Identificador de Áudio"), 
344                        "externalUrl" : externalAudioUrl, 
345                        "internalUrl" : internalAudioUrl, 
346                        "legend" : audioLegend 
347                        }]> 
348                    </#if> 
349                </#list> 
350 
351 
352                <#-- Seção de vídeo para o conteúdo da notícia --------------------------------------------------------> 
353                <#assign videos = [] 
354                videoIdentifierFieldSetList = getNodes("Fieldset24460782", xmlArticle) 
355
356                <#list videoIdentifierFieldSetList as videoIdentifierFieldSet> 
357                    <#assign 
358                    <#-- Grupo com as informações de url e legenda do áudio --> 
359                    videoInfoFieldSet = getGroupNode("Fieldset51040010",videoIdentifierFieldSet) 
360 
361                    videos += [{ 
362                    "id": getFieldValue(fieldList,videoIdentifierFieldSet, "Identificador de Vídeo"), 
363                    "youtubeID" : getFieldValue(fieldList, videoInfoFieldSet, "ID do vídeo do YouTube"), 
364                    "internalUrl" : getFileFromXML("DocumentLibrary15265409", videoInfoFieldSet, fileEntryService), 
365                    "legend" : getFieldValue(fieldList, videoInfoFieldSet, "Legenda do vídeo") 
366                    }] 
367
368                </#list> 
369 
370 
371                <#-- Seção de links para o conteúdo da notícia --------------------------------------------------------> 
372                <#assign 
373                links = [] 
374                linksFieldSetList = getNodes("Fieldset37770113", xmlArticle) 
375
376                <#list linksFieldSetList as linksFieldSet> 
377                    <#assign linkFieldSetList = getNodes("Fieldset10524367", linksFieldSet)> 
378 
379                    <#list linkFieldSetList as linkFieldSet> 
380                        <#assign 
381                        linkId = getFieldValue(fieldList, linkFieldSet, "Identificador do link") 
382 
383                        <#-- Grupo com as informações de url e legenda do áudio --> 
384                        linkInfoFieldSeet = getGroupNode("Fieldset86037074", linkFieldSet) 
385 
386                        iconType = getFieldValue(fieldList, linkInfoFieldSeet, "Ícone do link") 
387                        links += [{ 
388                        "id": linkId, 
389                        "externalLink" : getFieldValue(fieldList, linkInfoFieldSeet, "Link externo"), 
390                        "pageLink" : getPageLayoutLinkFromXML("LinkToLayout77941175", linkInfoFieldSeet, layoutLocalService), 
391                        "file" : getFileFromXML("DocumentLibrary34820760", linkInfoFieldSeet, fileEntryService), 
392                        "title" : getFieldValue(fieldList, linkInfoFieldSeet, "Título do link"), 
393                        "iconType" : iconType 
394                        }] 
395
396                    </#list> 
397                </#list> 
398 
399 
400                <#assign mediaGroupList = getNodes(getIdFromFieldName(fieldList, "Galeria de multimídia"), xmlArticle) /> 
401                <#assign galleryItems = []/> 
402 
403 
404                <#list mediaGroupList as mediaGroup > 
405                    <#assign nodes = getNodes(getIdFromFieldName(fieldList, "Selecione uma imagem") , mediaGroup) /> 
406                    <#list nodes as node> 
407                        <#assign medJson = jsonFactoryUtil.createJSONObject(node.getStringValue()) /> 
408                        <#if medJson?has_content && medJson["fileEntryId"]??> 
409                            <#assign cardTitle = ""/> 
410                            <#assign subtitle = ""/> 
411                            <#assign author = ""/> 
412                            <#assign createDate = ""/> 
413                            <#assign thumbnailImage = {}/> 
414                            <#assign originalFile = {} /> 
415 
416                            <#assign restResponse = restClient.get("/headless-delivery/v1.0/documents/${medJson.fileEntryId}") /> 
417                            <#if restResponse?has_content> 
418                                <#assign originalFile = restResponse /> 
419 
420                                <#if  restResponse.documentType?? && restResponse.documentType.contentFields?size gt 0> 
421                                    <#list restResponse.documentType.contentFields as item > 
422                                        <#if item.label == "Legenda" && item.dataType == "string" && item.contentFieldValue?? && item.contentFieldValue.data??> 
423                                            <#assign subtitle = item.contentFieldValue.data /> 
424                                            <#assign cardTitle = item.contentFieldValue.data /> 
425                                        </#if> 
426                                        <#if item.label == "Autor" && item.dataType == "string" && item.contentFieldValue?? && item.contentFieldValue.data??> 
427                                            <#assign author = item.contentFieldValue.data /> 
428                                        </#if> 
429                                        <#if item.label == "Imagem de thumbnail" && item.dataType == "image" && item.contentFieldValue?? && item.contentFieldValue.image??> 
430                                            <#assign thumbnailImage = restClient.get("/headless-delivery/v1.0/documents/${item.contentFieldValue.image.id}") /> 
431                                        </#if> 
432                                        <#if item.label == "Data" && item.dataType == "date" && item.contentFieldValue?? && item.contentFieldValue.data?? && item.contentFieldValue.data?trim?has_content> 
433                                            <#assign createDate = item.contentFieldValue.data /> 
434                                        </#if> 
435                                    </#list> 
436                                </#if> 
437                            </#if> 
438 
439                            <#if !(createDate?trim?has_content) > 
440                              <#assign createDate = originalFile.dateCreated?datetime /> 
441                            </#if> 
442 
443                            <#if originalFile["contentUrl"]??> 
444                                <#setting datetime_format="iso"> 
445                                <#assign galleryItems += [{"cardTitle": cardTitle, 
446                                "displayDate" : formatDate(originalFile.dateCreated?datetime), 
447                                "createDate": createDate, 
448                                "subtitle" : subtitle, 
449                                "author": author, 
450                                "thumbnailImage": thumbnailImage, 
451                                "originalFile": originalFile 
452                                }]  > 
453                            </#if> 
454                        </#if> 
455                    </#list> 
456 
457 
458                    <#assign nodes = getNodes(getIdFromFieldName(fieldList, "Selecione o Conteúdo Web da mídia") , mediaGroup) /> 
459                    <#list nodes as node> 
460                        <#attempt> 
461                            <#assign medJson = jsonFactoryUtil.createJSONObject(node.getStringValue()) /> 
462                            <#if medJson.classPK??> 
463                                <#assign medianewsJournalArticle = journalArticleService.fetchLatestArticle(medJson.classPK?number)/> 
464                                <#assign mediaDdmStructure = medianewsJournalArticle.getDDMStructure()/> 
465                                <#assign fieldListMedia = getFieldListByStructure(mediaDdmStructure)/> 
466                                <#assign xmlArticleMedia = medianewsJournalArticle.getDocument().getRootElement() /> 
467 
468                                <#assign cardTitle = getFieldValue(fieldListMedia, xmlArticleMedia, "Título Home")/> 
469                                <#assign subtitle = getFieldValue(fieldListMedia, xmlArticleMedia, "Legenda")/> 
470                                <#assign author = getFieldValue(fieldListMedia, xmlArticleMedia, "Autor")/> 
471 
472                                <#if getGroupNode(getIdFromFieldName(fieldListMedia, "Arquivo original"), xmlArticleMedia) ?? > 
473                                    <#assign originalFileGroup = getGroupNode(getIdFromFieldName(fieldListMedia, "Arquivo original"), xmlArticleMedia) /> 
474                                    <#assign originalFileExternalUrl = getFieldValue(fieldListMedia, originalFileGroup, "URL externa") /> 
475 
476                                <#-- Original file --> 
477                                    <#assign originalFile = {} /> 
478                                    <#assign originalFileJsonString = getSingleNodeString(getIdFromFieldName(fieldListMedia, "Arquivo selecionado"), originalFileGroup)/> 
479 
480                                    <#if originalFileJsonString?? && originalFileJsonString?has_content> 
481                                        <#assign originalFileJson = jsonFactoryUtil.createJSONObject(originalFileJsonString) /> 
482                                        <#if originalFileJson?? && originalFileJson["fileEntryId"]??> 
483                                            <#assign restResponse = restClient.get("/headless-delivery/v1.0/documents/${originalFileJson.fileEntryId}") /> 
484                                            <#if restResponse?has_content && restResponse["encodingFormat"]?? && restResponse.encodingFormat?index_of("image") gt -1> 
485                                                <#assign originalFile = restResponse /> 
486                                            </#if> 
487                                        </#if> 
488                                    </#if> 
489 
490 
491                                <#-- Thumbnail file --> 
492                                    <#assign thumbnailImage = {}/> 
493                                    <#assign thumbnailImageJsonString = getSingleNodeString(getIdFromFieldName(fieldListMedia, "Imagem de thumbnail"), xmlArticleMedia)/> 
494                                    <#if !thumbnailImageJsonString?? || !thumbnailImageJsonString?has_content> 
495                                        <#assign thumbnailImageJson = jsonFactoryUtil.createJSONObject(thumbnailImageJsonString) /> 
496                                        <#if thumbnailImageJson?? && thumbnailImageJson?has_content && thumbnailImageJson.fileEntryId??> 
497                                            <#assign restResponse = restClient.get("/headless-delivery/v1.0/documents/${thumbnailImageJson.fileEntryId?number}") /> 
498                                            <#if restResponse?has_content && restResponse["encodingFormat"]?? && restResponse.encodingFormat?index_of("image") gt -1> 
499                                                <#assign thumbnailImage = restResponse /> 
500                                            </#if> 
501                                        </#if> 
502                                    </#if> 
503 
504                                    <#assign mediaCreateDate = medianewsJournalArticle.getCreateDate() /> 
505                                    <#assign mediaLastPublishDate = extractPublishDate(medianewsJournalArticle) /> 
506 
507                                    <#if originalFile["contentUrl"]??> 
508                                        <#assign galleryItems += [{"cardTitle": cardTitle, 
509                                        "displayDate" : formatDate(mediaLastPublishDate), 
510                                        "createDate": newsJournalArticle.getDisplayDate(), 
511                                        "subtitle" : subtitle, 
512                                        "author": author, 
513                                        "thumbnailImage": thumbnailImage, 
514                                        "originalFile": originalFile, 
515                                        "originalFileExternalUrl": originalFileExternalUrl 
516                                        }] /> 
517                                    </#if> 
518                                </#if> 
519 
520                            </#if> 
521                            <#recover> 
522                        </#attempt> 
523                    </#list> 
524                </#list> 
525 
526 
527                <#assign newsInfo = { 
528                "mainHeadlineOfTheNews": mainHeadlineOfTheNews, 
529                "featuredNewsHeadline" : featuredNewsHeadline, 
530                "displayDate" : formatDate(createDate), 
531                "createDate": createDate, 
532                "newsSummary" : newsSummary, 
533                "newsImageFieldSet":  extractNewsImage(fieldList, xmlArticle, fileEntryService), 
534                "featureNewsVideo" : featureNewsVideo(xmlArticle, fileEntryService), 
535                "lastPublishDate": lastPublishDate, 
536                "flag": flag, 
537                "url": newsJournalArticleFriendlyUrl, 
538                "newsContent": newsContent, 
539                "audios": audios, 
540                "videos": videos, 
541                "galleryItems": galleryItems, 
542                "links": links 
543                }> 
544 
545 
546 
547 
548                <#-- Renderizar o título principal da notícia --> 
549                <#-- Conteúdo-> Conteúdo Web -> Templates: Site de Crise - Notícia - Título --> 
550                <@renderHeadLine newsInfo = newsInfo/> 
551 
552                <#-- Renderizar o subtítulo da notícia --> 
553                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Subtítulo --> 
554                <@renderReview newsInfo = newsInfo/> 
555 
556                <#-- Renderizar a data de publicação/edição da notícia e redes sociais --> 
557                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Redes sociais e data de publicação --> 
558                <@renderPublishAndSocialMediasInfos newsJournalArticle newsInfo/> 
559 
560                <#-- Renderizar as tags da notícia --> 
561                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Render Tags --> 
562                <#--assign tagCategoryList = getCategoriesNamesAndIds("Tags") /> 
563                <#assign tagCategoryList = getCategoryIdsFromEntry(assetEntry,tagCategoryList, categoryLocalService)> 
564                <#assign removeStartParameterWhenTagIsClicked = true> 
565                <#assign includeRequestParams = false> 
566                <#assign NEWS_PAGE_NAME= "busca"/> 
567                <@renderNewsTags tagCategoryList NEWS_PAGE_NAME removeStartParameterWhenTagIsClicked includeRequestParams --> 
568 
569                <#assign categoriesAsssetEntryResponse = restClient.get("/headless-delivery/v1.0/structured-contents/${assetEntry.getClassPK()}?nestedFields=embeddedTaxonomyCategory&fields=taxonomyCategoryBriefs") /> 
570               
571                <#if categoriesAsssetEntryResponse?? && categoriesAsssetEntryResponse?has_content && categoriesAsssetEntryResponse.taxonomyCategoryBriefs??> 
572                    <#assign tagCategoryList = getCategoriesNamesAndIds("Tags", categoriesAsssetEntryResponse.taxonomyCategoryBriefs) /> 
573                    <#assign removeStartParameterWhenTagIsClicked = true /> 
574                    <#assign includeRequestParams = false /> 
575                    <#assign NEWS_PAGE_NAME= "busca"/> 
576                    <@renderNewsTags tagCategoryList NEWS_PAGE_NAME removeStartParameterWhenTagIsClicked includeRequestParams /> 
577                </#if> 
578 
579                <#-- Renderizar a imagem de destaque da notícia --> 
580                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Imagem de destaque --> 
581                <@renderNewsFeaturedImage newsInfo = newsInfo/> 
582 
583                <#-- Renderizar o conteúdo da notícia --> 
584                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Conteúdo da notícia --> 
585                <@renderNewsContent newsInfo = newsInfo/> 
586 
587                <#-- Renderizar links da notícia --> 
588                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Links do conteúdo da notícia --> 
589                <@renderLinks newsInfo /> 
590 
591                <@renderCite /> 
592                <#-- Renderizar áudios da notícia --> 
593                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Áudios do conteúdo da notícia --> 
594 
595                <#-- Renderizar galeria de imagens notícia --> 
596                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Render galeria --> 
597                <@renderGallery newsInfo /> 
598 
599                <#-- Renderizar seção de download e mídias e texto --> 
600                <#-- Conteúdo Web -> Templates: Site de Crise - Notícia - Render seção download --> 
601                <@renderDownloadSection newsInfo /> 
602 
603            </div> 
604        </div> 
605    </div> 
606		 
607    <script> 
608        AUI().ready(function () { 
609            const newsContent = document.querySelector(".ptb-news__read-content"); 
610            newsContent.querySelectorAll("p").forEach((item) => { 
611                if (item.innerHTML.trim() == "") { 
612                    item.parentNode.removeChild(item); 
613
614            }); 
615					 
616					 
617            const newsContentLinks = newsContent.querySelectorAll("a"); 
618							newsContentLinks.forEach((link) => { 
619							link.classList.add('ptb-news__news-link'); 
620						}); 
621					 
622					console.log('tsts', newsContent, newsContentLinks) 
623        }); 
624					 
625    </script> 
626 
627    <style> 
628 
629        .breadcrumb-breakpoint { 
630            padding-top: var(--space-xxl); 
631            padding-bottom: var(--space-xl); 
632
633 
634        body.high-contrast-active .breadcrumb-breakpoint { 
635            background: var(--background-surface-level-01, #010101); 
636
637 
638        .breadcrumb-breakpoint .breadcrumb-col { 
639            display: flex; 
640            width: max-content; 
641            gap: var(--space-xxs); 
642            height: fit-content; 
643            overflow-x: hidden; 
644
645 
646        .breadcrumb-breakpoint #liferay-breadcrumb { 
647            display: none; 
648
649 
650        .breadcrumb-breakpoint .breadcrumb-page { 
651            display: flex; 
652            gap: var(--space-micro); 
653            height: var(--size-md); 
654            size: var(--size-md); 
655            border: 1px solid rgba(0, 0, 0, 0); 
656            box-sizing: border-box; 
657            border-radius: var(--border-radius-sm); 
658
659 
660        .breadcrumb-breakpoint a.breadcrumb-page.text span, 
661        .breadcrumb-breakpoint span.breadcrumb-page.text { 
662            white-space: nowrap; 
663
664 
665        .breadcrumb-breakpoint .breadcrumb-page a:focus { 
666            outline: none; 
667
668 
669        .breadcrumb-breakpoint .breadcrumb-page.active-page { 
670            color: var(--color-text-primary-default); 
671            background-color: var(--color-background-default-level-02); 
672            border-radius: var(--border-radius-sm); 
673
674 
675        body.high-contrast-active .breadcrumb-breakpoint .breadcrumb-page.active-page { 
676            background: var(--background-surface-level-02, #373737); 
677            color: var(--text-primary-default, #FFF); 
678
679 
680        .breadcrumb-breakpoint .breadcrumb-page.previous-page { 
681            transition: 300ms ease-in-out; 
682
683 
684        .breadcrumb-breakpoint .breadcrumb-page.previous-page.text { 
685            text-decoration: var(--text-decoration-none); 
686            color: var(--color-text-primary-default); 
687            text-transform: capitalize; 
688            padding-left: var(--space-xxs); 
689            padding-right: var(--space-xxs); 
690
691 
692        body.high-contrast-active .breadcrumb-breakpoint .breadcrumb-page.previous-page.text { 
693            color: var(--text-primary-default, #FFF); 
694
695 
696        .breadcrumb-breakpoint .breadcrumb-page.active-page.text { 
697            color: var(--color-text-primary-default); 
698            text-decoration: var(--text-decoration-none); 
699            background-color: var(--color-background-default-level-02); 
700            text-transform: capitalize; 
701            padding-left: var(--space-xxs); 
702            padding-right: var(--space-xxs); 
703
704 
705        body.high-contrast-active .breadcrumb-breakpoint .breadcrumb-page.previous-page.text { 
706            color: var(--text-primary-default, #FFF); 
707
708 
709        .breadcrumb-breakpoint .breadcrumb-page.previous-page:not(.three-dots):hover { 
710            background-color: var(--color-background-default-level-01); 
711            border-color: var(--border-color-dark); 
712            border-radius: var(--border-radius-sm); 
713            border: 1px solid; 
714            transition: all 300ms ease-in-out; 
715
716 
717        body.high-contrast-active .breadcrumb-breakpoint .breadcrumb-page.previous-page:not(.three-dots):hover { 
718            background-color: transparent; 
719
720 
721        .breadcrumb-breakpoint .breadcrumb-page:focus-visible { 
722            margin: var(--space-micro); 
723            border-radius: var(--space-micro); 
724            outline: none; 
725            border: 1px solid var(--color-primary-medium); 
726            box-sizing: border-box; 
727            transition: 300ms ease-in-out; 
728
729 
730        body.high-contrast-active .breadcrumb-breakpoint .breadcrumb-page:focus-visible { 
731            border: 1px solid rgba(228, 247, 232, 1); 
732
733 
734        .breadcrumb-breakpoint .breadcrumb-page .icon { 
735            width: var(--size-xxs); 
736            height: var(--size-xxs); 
737            border-color: var(--border-color-darkest); 
738            background-image: url('data:image/svg+xml,%3Csvg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M4.5 2.25L8.25 6L4.5 9.75" stroke="%23525252" stroke-linecap="round" stroke-linejoin="round"%3E%3C/path%3E%3C/svg%3E'); 
739            background-size: cover; 
740            margin-top: auto; 
741            margin-bottom: auto; 
742
743 
744        body.high-contrast-active .breadcrumb-breakpoint .breadcrumb-page .icon { 
745            background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none"><path d="M4.5 2.25L8.25 6L4.5 9.75" stroke="white" stroke-linecap="round" stroke-linejoin="round"/></svg>'); 
746
747 
748        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
749            header.cadmin.portlet-topper { 
750                display: none !important; 
751
752
753 
754        @media screen and (min-width: ${MIN_TABLET_WIDTH}px) and (max-width: ${MAX_TABLET_WIDTH}px) { 
755
756    </style> 
757<#else > 
758    <@printNewsNotFound /> 
759</#if> 
760 
761 
762 
763 
764<#macro printNewsNotFound> 
765    <div class="ptb-news__read-news"> 
766        <#if locale == "pt_BR"> 
767            <p>Nenhuma notícia</p> 
768        <#else > 
769            <p>There are no news</p> 
770        </#if> 
771    </div> 
772 
773    <style> 
774        .ptb-news__read-news p { 
775            font-family: var(--font-family-base); 
776            font-style: var(--font-style-normal, normal); 
777            font-weight: var(--font-weight-regular, 400); 
778            font-size: var(--font-size-xxs, 16px); 
779            line-height: var(--line-height-xl, 160%); 
780            color: var(--color-neutral-700, #515867); 
781
782    </style> 
783</#macro> 
784 
785<#-- ############# Site de Crise - Notícia - Redes sociais e data de publicação ####################################### --> 
786<#-- 
787Add elements from the sidebar to define your template. Type "${" to use the 
788autocomplete feature. 
789--> 
790 
791<#macro renderHeadLine newsInfo> 
792    <div class="breakpoint"> 
793        <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
794            <div class="main-headline-container"> 
795                <h1 class="main-headline">${newsInfo.mainHeadlineOfTheNews}</h1> 
796                <div class="bar"></div> 
797            </div> 
798        </div> 
799    </div> 
800    <style> 
801        .ptb-news__read-news .main-headline-container { 
802            display: flex; 
803            flex-direction: column; 
804            gap: var(--space-sm); 
805            padding-bottom: var(--space-lg); 
806
807 
808        .ptb-news__read-news .main-headline-container * { 
809            margin: 0; 
810            padding: 0; 
811
812 
813        .ptb-news__read-news .main-headline-container .main-headline { 
814            font-family: var(--font-family-base); 
815            font-style: var(--font-style-normal, normal); 
816            font-weight: var(--font-weight-bold); 
817            font-size: var(--font-size-xl); 
818            line-height: var(--line-height-sm); 
819            color: var(--color-neutral-800); 
820
821 
822        .ptb-news__read-news .main-headline-container .bar { 
823            width: var(--size-lg, 32px); 
824            height: var(--size-micro); 
825            background: var(--color-secondary-medium); 
826
827 
828        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
829            .ptb-news__read-news .main-headline-container { 
830                gap: var(--size-xxs); 
831
832
833    </style> 
834</#macro> 
835<#-- ################################################################################################################## --> 
836 
837<#-- ############# Site de Crise - Notícia - Redes sociais e data de publicação ####################################### --> 
838<#macro renderReview newsInfo> 
839    <#assign summaryCssRoot = "summary-container" /> 
840 
841    <div class="breakpoint"> 
842        <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
843            <div class="${summaryCssRoot}"> 
844                <h2 class="summary"> 
845                    ${newsInfo.newsSummary} 
846                </h2> 
847            </div> 
848        </div> 
849    </div> 
850 
851    <style> 
852        .${summaryCssRoot} .summary { 
853            padding-bottom: var(--space-lg); 
854
855 
856        .${summaryCssRoot} .summary, 
857        .${summaryCssRoot} .summary * { 
858            color: var(--color-neutral-800, #373737); 
859            font-family: var(--font-family-base); 
860            font-size: var(--font-size-sm); 
861            font-style: var(--font-style-italic); 
862            font-weight: var(--font-weight-regular); 
863            line-height: var(--line-height-xl); 
864            margin: var(--space-none); 
865
866 
867        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
868            .${summaryCssRoot} .summary, 
869            .${summaryCssRoot} .summary * { 
870                font-size: var(--font-size-xs); 
871
872
873    </style> 
874 
875</#macro> 
876<#-- ################################################################################################################## --> 
877 
878<#-- ############# Site de Crise - Notícia - Redes sociais e data de publicação ####################################### --> 
879<#macro renderPublishAndSocialMediasInfos journalArticle newsInfo> 
880 
881    <div class="breakpoint"> 
882        <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
883            <div class="publish_and_social_medias_infos_desk"> 
884                <div class="publish_and_update_date"> 
885                    <#assign lastPublishDate = journalArticle.getModifiedDate()> 
886                    <#assign createDate = journalArticle.getCreateDate()> 
887                    <#assign displayDate = journalArticle.getDisplayDate() /> 
888                    <#if journalArticle.getLastPublishDate()??> 
889                        <#assign lastPublishDate = journalArticle.getLastPublishDate()> 
890                    </#if> 
891 
892                    <#if locale == "pt_BR"> 
893                    <#-- <p class="updated">Atualizado em ${formatDate(lastPublishDate)}</p> --> 
894                        <p class="published">Postado em ${formatDate(displayDate)}</p> 
895                    <#else > 
896                    <#-- <p class="updated">Updated on ${formatDate(lastPublishDate)}</p> --> 
897                        <p class="published">Posted on ${formatDate(displayDate)}</p> 
898                    </#if> 
899                </div> 
900 
901                <#--        <div class="share_news_container">--> 
902                <div class="social-media-container"> 
903 
904                    <#assign emailMsg = "Veja o conteúdo do post no link "> 
905                    <#if locale == "en_US"> 
906                        <#assign emailMsg = "See the content of the post in the link "> 
907                    </#if> 
908                    <a class="share-news-social-media news-gallery-share-news-email" href="mailto:?subject=${newsInfo.mainHeadlineOfTheNews}&amp;body=${emailMsg}${newsInfo.url}" 
909                       target="_blank"> 
910                        <svg class="email" width="37" height="36" viewBox="0 0 37 36" fill="none" 
911                             xmlns="http://www.w3.org/2000/svg"> 
912                            <circle cx="18.5" cy="18" r="17.5" fill="white" stroke="#E1E1E1"/> 
913                            <path d="M24.9231 12H11.0769C10.9239 12 10.7772 12.0579 10.669 12.1611C10.5608 12.2642 10.5 12.4041 10.5 12.55V21.9C10.5 22.1917 10.6216 22.4715 10.838 22.6778C11.0543 22.8841 11.3478 23 11.6538 23H24.3462C24.6522 23 24.9457 22.8841 25.162 22.6778C25.3784 22.4715 25.5 22.1917 25.5 21.9V12.55C25.5 12.4041 25.4392 12.2642 25.331 12.1611C25.2228 12.0579 25.0761 12 24.9231 12ZM24.3462 21.9H11.6538V13.8012L17.6106 19.0056C17.7169 19.0984 17.8559 19.1498 18 19.1498C18.1441 19.1498 18.2831 19.0984 18.3894 19.0056L24.3462 13.8012V21.9Z" 
914                                  fill="#008542"/> 
915                        </svg> 
916                        <span>send e-mail</span> 
917                    </a> 
918 
919                    <a class="share-news-social-media news-gallery-share-news-facebook" href="https://www.facebook.com/sharer/sharer.php?u=${newsInfo.url}" target="_blank"> 
920                        <svg class="facebook" width="37" height="36" viewBox="0 0 37 36" fill="none" 
921                             xmlns="http://www.w3.org/2000/svg"> 
922                            <circle cx="18.5" cy="18" r="17.5" fill="white" stroke="#E1E1E1"/> 
923                            <path d="M17.5417 24H20.0341V18.1855H21.9697L22.2879 15.875H20.0341V14.2754C20.0341 13.9199 20.0871 13.6406 20.2462 13.4629C20.4053 13.2598 20.75 13.1582 21.2273 13.1582H22.5V11.1016C22.0227 11.0508 21.3864 11 20.6439 11C19.6894 11 18.947 11.2793 18.3902 11.8125C17.8068 12.3457 17.5417 13.082 17.5417 14.0469V15.875H15.5V18.1855H17.5417V24Z" 
924                                  fill="#008542"/> 
925                        </svg> 
926                        <span>Share Facebook </span> 
927                    </a> 
928 
929                    <#assign mobileShareButtonId = "mobile-share-" + randomNumber(5)> 
930                    <div class="mobile-share" id="${mobileShareButtonId}"> 
931                        <svg width="37" height="36" viewBox="0 0 37 36" fill="none" xmlns="http://www.w3.org/2000/svg"> 
932                            <circle cx="18.5" cy="18" r="17.5" fill="white" stroke="#E1E1E1"/> 
933                            <path d="M13.8923 20.5914C15.2136 20.5914 16.2847 19.5151 16.2847 18.1875C16.2847 16.8599 15.2136 15.7837 13.8923 15.7837C12.5711 15.7837 11.5 16.8599 11.5 18.1875C11.5 19.5151 12.5711 20.5914 13.8923 20.5914Z" 
934                                  fill="#008542" stroke="#008542" stroke-linecap="round" stroke-linejoin="round"/> 
935                            <path d="M22.2654 26.0001C23.5866 26.0001 24.6577 24.9238 24.6577 23.5962C24.6577 22.2686 23.5866 21.1924 22.2654 21.1924C20.9441 21.1924 19.873 22.2686 19.873 23.5962C19.873 24.9238 20.9441 26.0001 22.2654 26.0001Z" 
936                                  fill="#008542" stroke="#008542" stroke-linecap="round" stroke-linejoin="round"/> 
937                            <path d="M22.2654 15.1827C23.5866 15.1827 24.6577 14.1064 24.6577 12.7788C24.6577 11.4512 23.5866 10.375 22.2654 10.375C20.9441 10.375 19.873 11.4512 19.873 12.7788C19.873 14.1064 20.9441 15.1827 22.2654 15.1827Z" 
938                                  fill="#008542" stroke="#008542" stroke-linecap="round" stroke-linejoin="round"/> 
939                            <path d="M20.2546 14.0784L15.9036 16.8879" stroke="#008542" stroke-linecap="round" 
940                                  stroke-linejoin="round"/> 
941                            <path d="M15.9036 19.4871L20.2546 22.2966" stroke="#008542" stroke-linecap="round" 
942                                  stroke-linejoin="round"/> 
943                        </svg> 
944                    </div> 
945 
946                    <a class="share-news-social-media news-gallery-share-news-twitter" href="https://twitter.com/intent/tweet?url=${newsInfo.url}" target="_blank" data-size="large"> 
947                        <svg class="twitter" width="37" height="36" viewBox="0 0 37 36" fill="none" 
948                             xmlns="http://www.w3.org/2000/svg"> 
949                            <circle cx="18.5" cy="18" r="17.5" fill="white" stroke="#E1E1E1"/> 
950                            <path d="M23.1771 14.7301C23.6859 14.3325 24.1438 13.8554 24.5 13.2988C24.0421 13.5108 23.5078 13.6699 22.9736 13.7229C23.5333 13.3783 23.9403 12.8482 24.1438 12.1855C23.635 12.5036 23.0499 12.7422 22.4648 12.8747C21.956 12.3181 21.2691 12 20.5059 12C19.0303 12 17.8346 13.2458 17.8346 14.7831C17.8346 14.9952 17.8601 15.2072 17.911 15.4193C15.6977 15.2867 13.7133 14.1735 12.3904 12.5036C12.1614 12.9012 12.0342 13.3783 12.0342 13.9084C12.0342 14.8627 12.4922 15.7108 13.2299 16.2145C12.7975 16.188 12.365 16.0819 12.0088 15.8699V15.8964C12.0088 17.2482 12.9247 18.3614 14.1458 18.6265C13.9423 18.6795 13.6879 18.7325 13.4589 18.7325C13.2808 18.7325 13.1282 18.706 12.9501 18.6795C13.2808 19.7928 14.273 20.588 15.4432 20.6145C14.5274 21.3566 13.3826 21.8072 12.136 21.8072C11.907 21.8072 11.7035 21.7807 11.5 21.7542C12.6703 22.5494 14.0695 23 15.5959 23C20.5059 23 23.1771 18.7855 23.1771 15.1012C23.1771 14.9687 23.1771 14.8627 23.1771 14.7301Z" 
951                                  fill="#008542"/> 
952                        </svg> 
953                        <span>Share Twitter </span> 
954                    </a> 
955 
956                    <a class="share-news-social-media news-gallery-share-news-whatsapp" href="https://api.whatsapp.com/send?text=${newsInfo.url}" data-action="share/whatsapp" 
957                       target="_blank"> 
958                        <svg class="whatsapp" width="37" height="36" viewBox="0 0 37 36" fill="none" 
959                             xmlns="http://www.w3.org/2000/svg"> 
960                            <circle cx="18.5" cy="18" r="17.5" fill="white" stroke="#E1E1E1"/> 
961                            <path d="M12.5482 21.3241C11.6166 19.7525 11.2908 17.8949 11.6318 16.1C11.9729 14.3052 12.9573 12.6965 14.4003 11.5761C15.8434 10.4556 17.6457 9.90042 19.4691 10.0147C21.2925 10.129 23.0114 10.9049 24.3033 12.1967C25.5951 13.4886 26.371 15.2075 26.4853 17.0309C26.5996 18.8543 26.0444 20.6566 24.9239 22.0997C23.8035 23.5427 22.1948 24.5271 20.4 24.8682C18.6051 25.2092 16.7475 24.8834 15.1759 23.9518L12.5795 24.687C12.4731 24.7181 12.3603 24.72 12.2529 24.6925C12.1455 24.6651 12.0475 24.6092 11.9692 24.5308C11.8908 24.4525 11.8349 24.3545 11.8075 24.2471C11.78 24.1397 11.7819 24.0269 11.813 23.9205L12.5482 21.3241Z" 
962                                  fill="#008542"/> 
963                            <path d="M20.6917 21C20.0094 21.0017 19.3335 20.8686 18.7029 20.6083C18.0722 20.348 17.4992 19.9656 17.0168 19.4832C16.5344 19.0008 16.152 18.4278 15.8917 17.7971C15.6314 17.1665 15.4983 16.4906 15.5 15.8083C15.5017 15.3281 15.6937 14.8682 16.0338 14.5293C16.374 14.1903 16.8346 14 17.3148 14C17.394 13.9994 17.472 14.0201 17.5404 14.06C17.6089 14.1 17.6653 14.1576 17.7037 14.2269L18.462 15.5491C18.5071 15.6295 18.5303 15.7203 18.5291 15.8124C18.528 15.9046 18.5026 15.9948 18.4556 16.0741L17.8463 17.0917C18.1584 17.7859 18.7141 18.3416 19.4083 18.6537L20.4259 18.0444C20.5052 17.9974 20.5954 17.972 20.6876 17.9709C20.7797 17.9697 20.8705 17.9929 20.9509 18.038L22.2731 18.7963C22.3424 18.8347 22.4 18.8911 22.44 18.9596C22.4799 19.028 22.5006 19.106 22.5 19.1852C22.4983 19.6649 22.3074 20.1245 21.9689 20.4643C21.6303 20.8041 21.1713 20.9966 20.6917 21Z" 
964                                  fill="white"/> 
965                        </svg> 
966                        <span>Share to WhatsApp </span> 
967                    </a> 
968 
969                    <div class="copy-text-container news-copy-text"> 
970                        <svg viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> 
971                            <path d="M10.5 10.5H13.5V2.5H5.5V5.5" stroke="#008542" stroke-linecap="round" 
972                                  stroke-linejoin="round"/> 
973                            <path d="M10.5 5.5H2.5V13.5H10.5V5.5Z" stroke="#008542" stroke-linecap="round" 
974                                  stroke-linejoin="round"/> 
975                        </svg> 
976 
977                        <#if locale == "pt_BR"> 
978                            <p class="text">Copiar texto 
979                                <span class="copy-text-title-news"> ${newsInfo.mainHeadlineOfTheNews} </span> 
980                            </p> 
981                        <#else > 
982                            <p class="text">Copy text 
983                                <span class="copy-text-title-news"> ${newsInfo.mainHeadlineOfTheNews} </span> 
984                            </p> 
985                        </#if> 
986                    </div> 
987 
988                </div> 
989 
990                <#if locale == "pt_BR"> 
991                    <span class="copy-message">Texto copiado!</span> 
992                <#else > 
993                    <span class="copy-message">Text copied!</span> 
994                </#if> 
995                <#--        </div>--> 
996            </div> 
997        </div> 
998    </div> 
999 
1000    <style> 
1001        /*Data de publicação e redes sociais */ 
1002 
1003        /* Desktop */ 
1004        .ptb-news__read-news .publish_and_social_medias_infos_desk { 
1005            position: relative; 
1006            display: grid; 
1007            grid-template-columns: auto 1fr auto; 
1008
1009 
1010        .ptb-news__read-news .publish_and_social_medias_infos_desk * { 
1011            padding: var(--space-none, 0); 
1012            margin: var(--space-none, 0); 
1013            font-family: var(--font-family-base); 
1014            font-style: var(--font-style-normal, normal); 
1015            font-weight: var(--font-weight-regular, 400); 
1016            font-size: var(--font-size-xxs, 16px); 
1017            line-height: var(--line-height-xl, 160%); 
1018            color: var(--color-neutral-800, #373737); 
1019
1020 
1021        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk * { 
1022            color: var(--text-secondary-default, #F8F8F8); 
1023
1024 
1025        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk a svg path, 
1026        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk .mobile-share svg path { 
1027            stroke: var(--color-neutral-500, #D7D7D7); 
1028            fill: rgba(255, 255, 255, 0.32); 
1029
1030 
1031        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk a svg circle, 
1032        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk .mobile-share svg circle { 
1033            fill: rgba(255, 255, 255, 0.32); 
1034 
1035
1036 
1037        .ptb-news__read-news .publish_and_social_medias_infos_desk .publish_and_update_date { 
1038            display: flex; 
1039            flex-direction: column; 
1040            gap: var(--space-none, 0);; 
1041
1042 
1043        .ptb-news__read-news .publish_and_social_medias_infos_desk .publish_and_update_date .updated { 
1044            font-weight: var(--font-weight-bold, 700); 
1045
1046 
1047        .ptb-news__read-news .publish_and_social_medias_infos_desk .publish_and_update_date .published { 
1048            font-weight: var(--font-weight-normal, 400); 
1049
1050 
1051        .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container { 
1052            display: flex; 
1053            width: 100%; 
1054            justify-content: flex-end; 
1055            align-items: center; 
1056            gap: var(--space-sm, 16px); 
1057
1058 
1059        .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container .mobile-share { 
1060            display: none; 
1061            cursor: pointer; 
1062
1063		 
1064        .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container .mobile-share svg { 
1065					pointer-events: none; 
1066
1067			 
1068        .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container .share-news-social-media * { 
1069            pointer-events: none; 
1070
1071 
1072        .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container .share-news-social-media { 
1073            position: relative; 
1074
1075 
1076        .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container .share-news-social-media span { 
1077            position: absolute; 
1078            top: 0; 
1079            left: 0; 
1080            width: 100%; 
1081            height: 100%; 
1082            opacity: 0; 
1083            overflow: hidden; 
1084            pointer-events: none; 
1085        }         
1086 
1087        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container { 
1088            background: #FFFFFF; 
1089            border: var(--border-width-hairline, 1px) solid var(--color-opacity-dark-level-01, #CCCCCC); 
1090            border-radius: var(--border-radius-xl, 32px); 
1091            display: flex; 
1092            align-items: center; 
1093            gap: var(--space-sm, 16px); 
1094            padding: 6px var(--space-xxs, 8px); 
1095            height: 36px; 
1096            margin: 0; 
1097            cursor: pointer; 
1098
1099 
1100        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container * { 
1101          pointer-events: none; 
1102
1103 
1104        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container { 
1105            background: rgba(255, 255, 255, 0.32); 
1106            border: var(--border-width-hairline, 1px) solid rgba(255, 255, 255, 0.32); 
1107
1108 
1109        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container svg { 
1110            width: 18px; 
1111
1112 
1113        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk svg path { 
1114            stroke: var(--color-neutral-500, #D7D7D7); 
1115
1116 
1117        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container { 
1118            background: #FFFFFF; 
1119            border: var(--border-width-hairline, 1px) solid var(--color-opacity-dark-level-01, #CCCCCC); 
1120            border-radius: var(--border-radius-xl, 32px); 
1121            display: flex; 
1122            align-items: center; 
1123            gap: var(--space-sm, 16px); 
1124            padding: 6px var(--space-sm, 16px); 
1125            height: 36px; 
1126            margin: 0; 
1127            cursor: pointer; 
1128            position: relative; 
1129
1130 
1131 
1132        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container .text { 
1133            font-family: var(--font-family-base); 
1134            font-style: var(--font-weight-regular, normal); 
1135            margin: 0; 
1136            height: 100%; 
1137            display: flex; 
1138            align-items: center; 
1139            color: var(--color-primary-brand, #008542); 
1140            font-size: var(--font-size-micro, 12px); 
1141            font-weight: var(--font-weight-bold, 700); 
1142            line-height: var(--line-height-lg, 144%); 
1143
1144 
1145        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container .text .copy-text-title-news { 
1146            position: absolute; 
1147            top: 0; 
1148            left: 0; 
1149            width: 100%; 
1150            height: 100%; 
1151            opacity: 0; 
1152            overflow: hidden; 
1153
1154 
1155        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container .text { 
1156            color: var(--text-primary-accent, #E4F7E8); 
1157
1158 
1159        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-message { 
1160            display: none; 
1161            position: absolute; 
1162            bottom: -43px; 
1163            right: -15px; 
1164            padding: var(--space-xxxs, 4px) var(--space-sm, 15px); 
1165            margin: var(--space-micro, 2px) 10px; 
1166            width: 110px; 
1167            font-family: var(--font-family-base); 
1168            font-size: var(--font-size-micro, 12px); 
1169            color: var(--color-primary-brand, #008542); 
1170            background: #FFFFFF; 
1171            border-radius: var(--border-radius-md, 8px); 
1172 
1173            filter: drop-shadow(0px 4px 16px rgba(0, 0, 0, 0.16)); 
1174 
1175            cursor: pointer; 
1176
1177 
1178        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-message { 
1179            background: rgba(255, 255, 255, 0.32); 
1180            color: var(--text-primary-accent, #E4F7E8); 
1181
1182 
1183        .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-message-active { 
1184            display: block; 
1185
1186 
1187        /* Mobile */ 
1188 
1189        .ptb-news__read-news .publish_and_social_medias_infos_mobile { 
1190            display: flex; 
1191            flex-direction: column; 
1192            gap: 19px; 
1193
1194 
1195        .ptb-news__read-news .publish_and_social_medias_infos_mobile { 
1196            display: none; 
1197
1198 
1199        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text { 
1200            display: flex; 
1201            justify-content: space-between; 
1202            align-items: center; 
1203            margin-bottom: var(--space-lg, 32px); 
1204
1205 
1206        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .publish_and_update_date * { 
1207            padding: 0; 
1208            margin: 0; 
1209            font-family: var(--font-family-base); 
1210            font-style: var(--font-style-normal, normal); 
1211            font-size: var(--font-size-micro, 12px); 
1212            line-height: var(--line-height-md, 136%); 
1213            color: var(--color-neutral-800, #373737); 
1214
1215 
1216        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .publish_and_update_date { 
1217            display: flex; 
1218            flex-direction: column; 
1219            gap: 0; 
1220
1221 
1222        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .publish_and_update_date * { 
1223            color: var(--text-primary-accent, #E4F7E8); 
1224
1225 
1226        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .publish_and_update_date .updated { 
1227            font-weight: var(--font-weight-bold, 700); 
1228
1229 
1230        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .publish_and_update_date .published { 
1231            font-weight: var(--font-weight-regular, 400); 
1232
1233 
1234        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .copy-text-container { 
1235            background: #FFFFFF; 
1236            border: var(--border-width-hairline, 1px) solid var(--color-opacity-dark-level-01, #CCCCCC); 
1237            border-radius: var(--border-radius-xl, 32px); 
1238            display: flex; 
1239            align-items: center; 
1240            gap: var(--space-sm, 16px); 
1241            padding: 6px var(--space-xxxs, 8px); 
1242            width: 112px; 
1243            height: 36px; 
1244
1245 
1246        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .copy-text-container { 
1247            background: rgba(255, 255, 255, 0.32); 
1248            color: var(--text-primary-accent, #E4F7E8); 
1249
1250 
1251        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .copy-text-container p.text { 
1252            margin: 0; 
1253
1254 
1255        .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .copy-text-container .text { 
1256            font-family: var(--font-family-base); 
1257            font-style: var(--font-style-normal, normal); 
1258            font-weight: var(--font-weight-regular, 400); 
1259            font-size: var(--font-size-micro, 13px); 
1260            line-height: 14px; 
1261            color: var(--color-primary-medium, #008542); 
1262
1263 
1264        body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_mobile .publish_and_update_date_and_copy_text .copy-text-container .text { 
1265            background: rgba(255, 255, 255, 0.32); 
1266            color: var(--text-primary-accent, #E4F7E8); 
1267
1268 
1269        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
1270            .ptb-news__read-news .publish_and_social_medias_infos_desk { 
1271                display: grid; 
1272                grid-template-columns: 100%; 
1273                grid-template-rows: 1fr 100%; 
1274                gap: var(--space-md); 
1275
1276 
1277            .ptb-news__read-news .publish_and_social_medias_infos_desk .publish_and_update_date { 
1278                grid-column-start: 1; 
1279                grid-column-end: 1; 
1280                grid-row-start: 1; 
1281                grid-row-end: 1; 
1282                gap: var(--space-xxs, 8px); 
1283
1284 
1285            .ptb-news__read-news .publish_and_social_medias_infos_desk .publish_and_update_date * { 
1286                padding: 0; 
1287                margin: 0; 
1288                font-family: var(--font-family-base); 
1289                font-style: var(--font-style-normal); 
1290                color: var(--color-neutral-800, #373737); 
1291                font-weight: var(--font-weight-bold); 
1292                font-size: var(--font-size-xxxs, 14px); 
1293                line-height: var(--line-height-md, 132%); 
1294
1295 
1296            body.high-contrast-active .ptb-news__read-news .publish_and_social_medias_infos_desk .publish_and_update_date * { 
1297                color: var(--text-primary-accent, #E4F7E8); 
1298
1299 
1300            .ptb-news__read-news .publish_and_social_medias_infos_desk .publish_and_update_date .published { 
1301                font-weight: 400; 
1302
1303 
1304            .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container { 
1305                grid-column-start: 1; 
1306                grid-column-end: 2; 
1307                grid-row-start: 2; 
1308                grid-row-end: 2; 
1309                justify-content: flex-end; 
1310                height: 36px; 
1311
1312 
1313            .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container { 
1314                grid-column-start: 1; 
1315                grid-column-end: 2; 
1316                grid-row-start: 2; 
1317                grid-row-end: 2; 
1318                max-width: 112px; 
1319                place-self: end; 
1320
1321 
1322            .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-text-container .text { 
1323                display: none; 
1324
1325 
1326            .ptb-news__read-news .publish_and_social_medias_infos_desk .copy-message { 
1327                bottom: 0; 
1328                right: -9px; 
1329
1330 
1331            .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container .mobile-share { 
1332                display: initial; 
1333
1334
1335 
1336        @media screen and (min-width: ${MIN_TABLET_WIDTH}px) and (max-width: ${MAX_TABLET_WIDTH}px) { 
1337            .ptb-news__read-news .publish_and_social_medias_infos_desk .social-media-container { 
1338                padding-right: 0; 
1339
1340
1341 
1342 
1343    </style> 
1344 
1345    <script> 
1346        AUI().ready(function () { 
1347 
1348            function copyOnClick(text) { 
1349 
1350                const strWithoutHtmlTags = text.replace(/(<([^>]+)>)/gi, ""); 
1351                const strWithoutMarcationBrackets = strWithoutHtmlTags.replace(/ *#\[[^\]]*]/g, ""); 
1352                const strWithoutNextPrevious = strWithoutMarcationBrackets.replace(/Previous    Next/g, ""); 
1353                const strWithoutBlankEnters = strWithoutNextPrevious.replace(/^\s*$(?:\r\n?|\n)/gm, ""); 
1354                const tempInput = document.createElement("textarea"); 
1355                tempInput.value = strWithoutBlankEnters; 
1356 
1357                document.body.appendChild(tempInput); 
1358                tempInput.select(); 
1359                document.execCommand("copy"); 
1360 
1361                if (tempInput.value.length > 0) { 
1362                    copyMessage.classList.add('copy-message-active'); 
1363 
1364                    timerToMessage() 
1365
1366 
1367                document.body.removeChild(tempInput); 
1368
1369 
1370            const root = document.querySelector(".publish_and_social_medias_infos_desk"); 
1371            const copyTextContainer = root.querySelector(".copy-text-container"); 
1372            copyTextContainer.addEventListener("click", (event) => { 
1373                event.preventDefault(); 
1374                const titleText = document.querySelector(".main-headline-container .main-headline").innerHTML; 
1375                const publishSocialMediaText = document.querySelector(".publish_and_social_medias_infos_desk .publish_and_update_date").innerHTML; 
1376                const tagsText = document.querySelector(".tags").innerHTML; 
1377                const newsContentText = document.querySelector(".news-content").innerHTML; 
1378                const text = titleText + publishSocialMediaText + tagsText + newsContentText; 
1379                copyOnClick(text) 
1380            }); 
1381 
1382            const mobileShare = async () => { 
1383                try { 
1384                    const shareData = { 
1385                        title: '${newsInfo.mainHeadlineOfTheNews}', 
1386                        text: '', 
1387                        url: '${newsInfo.url}' 
1388                    }; 
1389                    await navigator.share(shareData); 
1390                } catch (err) { 
1391 
1392
1393            }; 
1394 
1395            const mobileShareButton = document.querySelector("#${mobileShareButtonId}"); 
1396            mobileShareButton.addEventListener("click", (event) => { 
1397                event.preventDefault(); 
1398                mobileShare(); 
1399            }); 
1400 
1401            const copyMessage = document.querySelector('.copy-message'); 
1402            const timerToMessage = () => { 
1403                setTimeout(() => { 
1404                    removeMessage(); 
1405                }, 2500); 
1406 
1407
1408 
1409            const removeMessage = () => { 
1410                copyMessage.classList.remove('copy-message-active'); 
1411
1412 
1413        }); 
1414    </script> 
1415 
1416</#macro> 
1417 
1418<#-- ################################################################################################################## --> 
1419 
1420<#-- ############# Site de Crise - Notícia - Render Tags ############################################################## --> 
1421 
1422<#function getCategoriesNamesAndIds vocabularyName categoriesList> 
1423    <#assign tagCategoryList = [] /> 
1424 
1425    <#assign tagsVocabulary = assetVocabularyService.fetchGroupVocabulary(groupId, vocabularyName) /> 
1426    <#list categoriesList as cat> 
1427        <#if tagsVocabulary.getVocabularyId() == cat.embeddedTaxonomyCategory.taxonomyVocabularyId > 
1428            <#assign tagCategoryList += [[cat.taxonomyCategoryName, cat.taxonomyCategoryId]] /> 
1429        </#if> 
1430    </#list> 
1431    <#return tagCategoryList> 
1432</#function> 
1433 
1434<#function filterCategories allCategoryInfoList> 
1435    <#assign filteredCategoryInfo = []> 
1436    <#assign assetEntryQueryService = objectUtil("com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil").getService()> 
1437    <#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
1438 
1439    <#list allCategoryInfoList as catInfo> 
1440        <#assign catId = catInfo[1]> 
1441        <#assign search = assetEntryQuery.setAllCategoryIds([catId])> 
1442        <#assign foundEntries = assetEntryQueryService.getEntries(assetEntryQuery)> 
1443        <#if foundEntries?size gt 0> 
1444            <#assign filteredCategoryInfo += [catInfo]> 
1445        </#if> 
1446    </#list> 
1447 
1448    <#return filteredCategoryInfo> 
1449</#function> 
1450 
1451<#assign 
1452vocabularies = assetVocabularyService.getGroupVocabularies(groupId) 
1453flagVocabulary = findVocabulary("Flag", vocabularies) 
1454assetCategoryPropService = serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") 
1455/> 
1456 
1457<#function getCategoryIdsFromEntry entry categoriesToFilter assetCategoryLocalService> 
1458    <#if !entry??> 
1459        <#return []> 
1460    </#if> 
1461 
1462    <#assign categoriesFromEntry = []> 
1463 
1464    <#assign ids = assetCategoryLocalService.getCategoryIds("com.liferay.journal.model.JournalArticle", entry.getClassPK()) /> 
1465    <#list categoriesToFilter as catToFilter> 
1466        <#assign catIdFromEntry =  catToFilter[1] /> 
1467        <#assign index = ids?seq_index_of(catIdFromEntry)/> 
1468        <#if index != -1> 
1469            <#assign categoriesFromEntry += [catToFilter]/> 
1470        </#if> 
1471    </#list> 
1472 
1473    <#return categoriesFromEntry> 
1474</#function> 
1475 
1476<#macro renderNewsTags categoryList targetPageWhenClickTag removeStartParameterWhenTagIsClicked updateTagParamsWhenClicked> 
1477    <#assign tagPrefix = "tags-" + randomNumber(groupId?number)> 
1478    <div class="breakpoint"> 
1479        <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
1480            <div class="${tagPrefix} "> 
1481 
1482                <#assign siteUrl = "" /> 
1483                <#if themeDisplay.getPortalURL()?contains("webserver")> 
1484                    <#assign siteUrl = themeDisplay.getPortalURL() + themeDisplay.getPathFriendlyURLPublic() + layout.getGroup().friendlyURL /> 
1485                </#if> 
1486 
1487                <div class="tags"> 
1488                    <#list categoryList as cat> 
1489                        <a href="${siteUrl}/busca?q=&category=${cat[1]}" 
1490                           class="category news-tag-item" cetegoryid="${cat[1]}"># ${cat[0]}</a> 
1491                    </#list> 
1492                </div> 
1493            </div> 
1494        </div> 
1495    </div> 
1496 
1497    <style> 
1498        .${tagPrefix} { 
1499            display: flex; 
1500            flex-direction: column; 
1501            padding: 0; 
1502            gap: var(--space-sm); 
1503
1504 
1505        .${tagPrefix} * { 
1506            margin: 0; 
1507            padding: 0; 
1508
1509 
1510        .${tagPrefix} .tags { 
1511            display: flex; 
1512            flex-wrap: wrap; 
1513            gap: var(--space-xxs, 8px); 
1514            padding: var(--space-lg) 0 var(--space-xl); 
1515
1516 
1517        .${tagPrefix} .tags .category { 
1518            padding: var(--space-xxxs) var(--space-xxs); 
1519            background: var(--color-neutral-100); 
1520            border: 1px solid var(--color-neutral-500); 
1521            border-radius: var(--border-radius-xl, 32px); 
1522 
1523            font-family: var(--font-family-base); 
1524            font-style: var(--font-style-normal); 
1525            font-weight: var(--font-weight-regular); 
1526            font-size: var(--font-size-xxxs); 
1527            line-height: var(--line-height-xl); 
1528            color: var(--color-neutral-800, #373737); 
1529            cursor: pointer; 
1530
1531 
1532        body.high-contrast-active .${tagPrefix} .tags .category { 
1533            background: rgba(255, 255, 255, 0.32); 
1534            border: 1px solid rgba(255, 255, 255, 0.32); 
1535            color: var(--text-secondary-default, #F8F8F8); 
1536
1537 
1538        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
1539            .${tagPrefix} .tags { 
1540                display: flex; 
1541                flex-wrap: wrap; 
1542                gap: var(--space-xxs, 8px); 
1543                padding: var(--space-sm) 0 var(--space-lg); 
1544
1545 
1546            .${tagPrefix} { 
1547                margin-top: var(--space-sm); 
1548
1549
1550    </style> 
1551 
1552    <script> 
1553        AUI().ready(function () { 
1554 
1555            const urlParams = new URLSearchParams(window.location.search); 
1556            const categories = urlParams.getAll("category").sort(); 
1557 
1558            const root = document.querySelector(".${tagPrefix}"); 
1559            const tags = root.querySelectorAll(".category"); 
1560            tags.forEach((tag, index) => { 
1561 
1562                const categoryId = tag.getAttribute("cetegoryid"); 
1563                if (categories.indexOf(categoryId) != -1) { 
1564                    tag.classList.add("active"); 
1565
1566 
1567                <#if updateTagParamsWhenClicked> 
1568                tag.addEventListener("click", (e) => { 
1569                    e.preventDefault(); 
1570                    const clickedTag = e.target; 
1571                    const urlParams = new URLSearchParams(window.location.search); 
1572                    urlParams.delete("tag"); 
1573                    urlParams.delete("category"); 
1574 
1575                    const categoryId = clickedTag.getAttribute("cetegoryid"); 
1576                    urlParams.append("category", categoryId); 
1577 
1578                    <#if removeStartParameterWhenTagIsClicked> 
1579                    urlParams.delete("start"); 
1580                    </#if> 
1581 
1582                    const href = "${themeDisplay.getPortalURL() + mountUrlToPage(targetPageWhenClickTag)}?" + urlParams.toString(); 
1583                    window.location.href = href; 
1584                }); 
1585                </#if> 
1586            }); 
1587        }); 
1588    </script> 
1589 
1590</#macro> 
1591 
1592<#-- ################################################################################################################## --> 
1593 
1594<#-- ############# Site de Crise - Notícia - Imagem de destaque ####################################################### --> 
1595<#macro renderNewsFeaturedImage newsInfo> 
1596<#--if newsInfo.newsImageFieldSet.newsImage.url != ""--> 
1597 
1598    <#if !newsInfo.newsImageFieldSet.newsImage.url?has_content> 
1599        <#return /> 
1600    </#if> 
1601	 
1602    <div class="news-featured-image"> 
1603        <div class="breakpoint"> 
1604            <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
1605                <#if newsInfo.newsImageFieldSet.credits != ""> 
1606                    <p class="credits"> 
1607                        ${newsInfo.newsImageFieldSet.credits} 
1608                    </p> 
1609                </#if> 
1610            </div> 
1611        </div> 
1612        <div class="breakpoint"> 
1613            <div class="col-2-11 md-col-1-12 sm-col-1-4"> 
1614                <img alt="${newsInfo.newsImageFieldSet.newsImage.alt}" 
1615                     src="${newsInfo.newsImageFieldSet.newsImage.url}" 
1616                     alt="${newsInfo.newsImageFieldSet.newsImage.alt}"/> 
1617            </div> 
1618        </div> 
1619        <#if newsInfo.newsImageFieldSet.legend != ""> 
1620					 
1621					 
1622			 <@liferay_util["html-top"]> 
1623				 <meta name="title" content="${newsInfo.mainHeadlineOfTheNews}"> 
1624				 <meta name="description" content="${newsInfo.newsSummary}"> 
1625							 
1626					<meta property="og:type" content="website" > 
1627					<meta property="og:url" content="${currentURL}" > 
1628					<meta property="og:title" content="${newsInfo.mainHeadlineOfTheNews}"> 
1629				  <meta property="og:description" content="${newsInfo.newsSummary}" /> 
1630					<meta property="og:image" content= "${themeDisplay.getPortalURL()}/o/adaptive-media/image/${newsInfo.newsImageFieldSet.newsImage.fileEntryId}/Thumbnail-300x300/image" > 
1631				 <meta property="og:image:alt" content="${newsInfo.newsImageFieldSet.newsImage.alt}"> 
1632                             
1633				 <meta name="twitter:card" content="summary_large_image"> 
1634				 <meta name="twitter:url" content="${currentURL}" /> 
1635				 <meta name="twitter:title" content="${newsInfo.mainHeadlineOfTheNews}"> 
1636				 <meta name="twitter:description" content="${newsInfo.newsSummary}" /> 
1637				 <meta name="twitter:image" content= "${themeDisplay.getPortalURL()}/o/adaptive-media/image/${newsInfo.newsImageFieldSet.newsImage.fileEntryId}/Thumbnail-300x300/image" > 
1638				 <meta name="twitter:image:alt" content="${newsInfo.newsImageFieldSet.newsImage.alt}"> 
1639				  
1640			 </@> 
1641    
1642					 
1643            <div class="breakpoint"> 
1644                <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
1645                    <div class="legend"> 
1646                        <p>${newsInfo.newsImageFieldSet.legend}</p> 
1647                        <a class="download download-news-image" href="${newsInfo.newsImageFieldSet.newsImage.url}?download=true" 
1648                           alt="${newsInfo.newsImageFieldSet.newsImage.alt}"> 
1649                            Download 
1650                            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" 
1651                                 xmlns="http://www.w3.org/2000/svg"> 
1652                                <path d="M5.375 6.875L8 9.5M8 9.5L10.625 6.875M8 9.5V2.5M13.5 9.5V13C13.5 13.1326 13.4473 13.2598 13.3536 13.3536C13.2598 13.4473 13.1326 13.5 13 13.5H3C2.86739 13.5 2.74021 13.4473 2.64645 13.3536C2.55268 13.2598 2.5 13.1326 2.5 13V9.5" 
1653                                      stroke="#008542" stroke-width="1.5" stroke-linecap="round" 
1654                                      stroke-linejoin="round"/> 
1655                            </svg> 
1656                            <span>${newsInfo.newsImageFieldSet.legend}</span> 
1657                        </a> 
1658                    </div> 
1659                </div> 
1660            </div> 
1661        </#if> 
1662    </div> 
1663    <style> 
1664        .ptb-news__read-news .news-featured-image { 
1665            padding: 0 0 var(--space-xl) 0; 
1666
1667 
1668        .ptb-news__read-news .news-featured-image img { 
1669            width: 100%; 
1670            height: 470px; 
1671            object-fit: cover; 
1672            border-radius: var(--border-radius-lg, 16px); 
1673
1674 
1675        .ptb-news__read-news .news-featured-image * { 
1676            font-family: var(--font-family-base); 
1677            line-height: var(--line-height-xl); 
1678
1679 
1680        .ptb-news__read-news .news-featured-image .credits { 
1681            font-style: var(--font-style-normal); 
1682            font-weight: var(--font-weight-bold, 700); 
1683            font-size: var(--font-size-micro, 12px); 
1684            text-align: right; 
1685            color: var(--color-neutral-600, #959595); 
1686            margin-bottom: var(--space-xxxs, 4px); 
1687
1688 
1689        body.high-contrast-active .ptb-news__read-news .news-featured-image .credits { 
1690            color: var(--text-secondary-default, #F8F8F8); 
1691
1692 
1693        .ptb-news__read-news .news-featured-image .legend { 
1694            margin-top: var(--space-xxxs, 4px); 
1695            display: flex; 
1696            justify-content: space-between; 
1697
1698 
1699        .ptb-news__read-news .news-featured-image .legend .download-news-image { 
1700            position: relative; 
1701
1702 
1703        .ptb-news__read-news .news-featured-image .legend .download-news-image span { 
1704           position: absolute; 
1705           top: 0; 
1706           left: 0; 
1707           opacity: 0; 
1708           width: 100%; 
1709           height: 100%; 
1710
1711 
1712        .ptb-news__read-news .news-featured-image .legend, 
1713        .ptb-news__read-news .news-featured-image .legend * { 
1714            font-style: var(--font-style-italic, italic); 
1715            font-weight: var(--font-weight-regular, 400); 
1716            font-size: var(--font-size-xxs, 16px); 
1717            color: var(--color-neutral-700, #515867); 
1718
1719 
1720        .ptb-news__read-news .news-featured-image .legend a { 
1721            display: flex; 
1722            align-items: center; 
1723            gap: var(--space-sm, 16px); 
1724            color: var(--color-primary-brand, #008542); 
1725            font-family: var(--font-family-base); 
1726            font-size: var(--font-size-xxxs, 14px); 
1727            font-style: var(--font-style-normal, normal); 
1728            font-weight: var(--font-weight-bold, 700); 
1729            line-height: var(--line-height-lg, 144%); 
1730            text-decoration-line: var(--text-decoration-underline, underline); 
1731
1732 
1733        body.high-contrast-active .ptb-news__read-news .news-featured-image .legend, 
1734        body.high-contrast-active .ptb-news__read-news .news-featured-image .legend * { 
1735            color: var(--text-secondary-default, #F8F8F8); 
1736
1737 
1738        body.high-contrast-active .ptb-news__read-news .news-featured-image .legend .download svg path { 
1739            stroke: var(--color-primary-solid-to-bright-200, var(--color-primary-medium)); 
1740
1741 
1742        .ptb-news__read-news .news-featured-image .legend .download * { 
1743          pointer-events: none; 
1744
1745 
1746        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
1747            .ptb-news__read-news .news-featured-image .legend, 
1748            .ptb-news__read-news .news-featured-image .legend * { 
1749                font-size: var(--font-size-xxs, 14px); 
1750                line-height: var(--line-height-xl, 160%); 
1751
1752 
1753            .ptb-news__read-news .news-featured-image img { 
1754                height: 163px; 
1755
1756
1757    </style> 
1758 
1759<#--/#if --> 
1760</#macro> 
1761<#-- ################################################################################################################## --> 
1762 
1763<#-- ############# Site de Crise - Notícia - Conteúdo da notícia ###################################################### --> 
1764 
1765<#macro renderNewsContent newsInfo> 
1766 
1767    <#assign targetStr = "<div class='paragraph_separator'><span class='dot'></span><span class='dot'></span><span class='dot'></span><span class='dot'></span></div>"> 
1768    <#assign content = newsInfo.newsContent?replace("<p></p>", targetStr, 'r')> 
1769    <#assign content = content?replace("<p> </p>", targetStr, 'r')> 
1770    <#assign content = content?replace("<p></p>", targetStr, 'r')> 
1771    <#assign content = content?replace("<p>&nbsp;</p>", targetStr, 'r')> 
1772 
1773    <div class="news-content breakpoint"> 
1774        ${content} 
1775 
1776        <div class="audio-template audio-pause audio-unmuted" style="display:none"> 
1777            <div class="audio-button-play"> 
1778                <svg class="audio-play-icon" width="100%" height="100%" viewBox="0 0 91 90" fill="#008542" 
1779                     xmlns="http://www.w3.org/2000/svg"> 
1780                    <circle cx="45.2903" cy="45" r="44.5" stroke="#008542"></circle> 
1781                    <path d="M58.9759 43.2545C60.3409 44.0179 60.3409 45.9821 58.9759 46.7455L38.7505 58.0578C37.4173 58.8034 35.7742 57.8397 35.7742 56.3122L35.7742 33.6878C35.7742 32.1603 37.4173 31.1966 38.7505 31.9422L58.9759 43.2545Z" 
1782                          fill="white"></path> 
1783                </svg> 
1784 
1785                <svg class="audio-pause-icon" width="100%" height="100%" viewBox="0 0 91 90" fill="#008542" 
1786                     xmlns="http://www.w3.org/2000/svg"> 
1787                    <circle cx="45.2903" cy="45" r="44.5" stroke="#008542"></circle> 
1788                    <path d="M42.3736 30.4167H33.6236V59.5834H42.3736V30.4167Z" fill="white"></path> 
1789                    <path d="M48.2069 59.5834H56.9569V30.4167H48.2069V59.5834Z" fill="white"></path> 
1790                </svg> 
1791            </div> 
1792            <div class="audio-sondwave"> 
1793                <svg class="audio-sondwave-desktop" width="100%" height="100%" viewBox="0 0 590 30" fill="none" 
1794                     xmlns="http://www.w3.org/2000/svg"> 
1795                    <g clip-path="url(#clip0_2625_8152)"> 
1796                        <line x1="0.75" y1="0.75" x2="0.749999" y2="29.25" stroke="#008542" stroke-width="1.5" 
1797                              stroke-linecap="round"/> 
1798                        <line x1="5.91016" y1="7.75" x2="5.91016" y2="21.25" stroke="#008542" stroke-width="1.5" 
1799                              stroke-linecap="round"/> 
1800                        <line x1="11.0723" y1="5.75" x2="11.0723" y2="24.25" stroke="#008542" stroke-width="1.5" 
1801                              stroke-linecap="round"/> 
1802                        <line x1="16.2344" y1="11.75" x2="16.2344" y2="18.25" stroke="#008542" stroke-width="1.5" 
1803                              stroke-linecap="round"/> 
1804                        <line x1="21.3945" y1="9.75" x2="21.3945" y2="20.25" stroke="#008542" stroke-width="1.5" 
1805                              stroke-linecap="round"/> 
1806                        <line x1="26.5566" y1="9.75" x2="26.5566" y2="19.25" stroke="#008542" stroke-width="1.5" 
1807                              stroke-linecap="round"/> 
1808                        <line x1="30.6855" y1="1.75" x2="30.6855" y2="28.25" stroke="#008542" stroke-width="1.5" 
1809                              stroke-linecap="round"/> 
1810                        <line x1="35.8477" y1="12.75" x2="35.8477" y2="17.25" stroke="#008542" stroke-width="1.5" 
1811                              stroke-linecap="round"/> 
1812                        <line x1="41.0078" y1="13.75" x2="41.0078" y2="16.25" stroke="#008542" stroke-width="1.5" 
1813                              stroke-linecap="round"/> 
1814                        <line x1="46.1699" y1="10.75" x2="46.1699" y2="19.25" stroke="#008542" stroke-width="1.5" 
1815                              stroke-linecap="round"/> 
1816                        <line x1="51.3301" y1="8.75" x2="51.3301" y2="20.25" stroke="#008542" stroke-width="1.5" 
1817                              stroke-linecap="round"/> 
1818                        <line x1="56.4922" y1="0.75" x2="56.4922" y2="29.25" stroke="#008542" stroke-width="1.5" 
1819                              stroke-linecap="round"/> 
1820                        <line x1="61.6523" y1="7.75" x2="61.6523" y2="21.25" stroke="#008542" stroke-width="1.5" 
1821                              stroke-linecap="round"/> 
1822                        <line x1="66.8145" y1="5.75" x2="66.8145" y2="24.25" stroke="#008542" stroke-width="1.5" 
1823                              stroke-linecap="round"/> 
1824                        <line x1="71.9766" y1="11.75" x2="71.9766" y2="18.25" stroke="#008542" stroke-width="1.5" 
1825                              stroke-linecap="round"/> 
1826                        <line x1="77.1367" y1="9.75" x2="77.1367" y2="20.25" stroke="#008542" stroke-width="1.5" 
1827                              stroke-linecap="round"/> 
1828                        <line x1="82.2988" y1="9.75" x2="82.2988" y2="19.25" stroke="#008542" stroke-width="1.5" 
1829                              stroke-linecap="round"/> 
1830                        <line x1="86.4277" y1="1.75" x2="86.4277" y2="28.25" stroke="#008542" stroke-width="1.5" 
1831                              stroke-linecap="round"/> 
1832                        <line x1="91.5879" y1="12.75" x2="91.5879" y2="17.25" stroke="#008542" stroke-width="1.5" 
1833                              stroke-linecap="round"/> 
1834                        <line x1="96.75" y1="13.75" x2="96.75" y2="16.25" stroke="#008542" stroke-width="1.5" 
1835                              stroke-linecap="round"/> 
1836                        <line x1="101.91" y1="10.75" x2="101.91" y2="19.25" stroke="#008542" stroke-width="1.5" 
1837                              stroke-linecap="round"/> 
1838                        <line x1="107.072" y1="8.75" x2="107.072" y2="20.25" stroke="#008542" stroke-width="1.5" 
1839                              stroke-linecap="round"/> 
1840                        <line x1="112.234" y1="0.75" x2="112.234" y2="29.25" stroke="#008542" stroke-width="1.5" 
1841                              stroke-linecap="round"/> 
1842                        <line x1="117.395" y1="7.75" x2="117.395" y2="21.25" stroke="#008542" stroke-width="1.5" 
1843                              stroke-linecap="round"/> 
1844                        <line x1="122.557" y1="5.75" x2="122.557" y2="24.25" stroke="#008542" stroke-width="1.5" 
1845                              stroke-linecap="round"/> 
1846                        <line x1="127.717" y1="11.75" x2="127.717" y2="18.25" stroke="#008542" stroke-width="1.5" 
1847                              stroke-linecap="round"/> 
1848                        <line x1="132.879" y1="9.75" x2="132.879" y2="20.25" stroke="#008542" stroke-width="1.5" 
1849                              stroke-linecap="round"/> 
1850                        <line x1="138.041" y1="9.75" x2="138.041" y2="19.25" stroke="#008542" stroke-width="1.5" 
1851                              stroke-linecap="round"/> 
1852                        <line x1="142.17" y1="1.75" x2="142.17" y2="28.25" stroke="#008542" stroke-width="1.5" 
1853                              stroke-linecap="round"/> 
1854                        <line x1="147.33" y1="12.75" x2="147.33" y2="17.25" stroke="#008542" stroke-width="1.5" 
1855                              stroke-linecap="round"/> 
1856                        <line x1="151.75" y1="0.75" x2="151.75" y2="29.25" stroke="#008542" stroke-width="1.5" 
1857                              stroke-linecap="round"/> 
1858                        <line x1="156.91" y1="7.75" x2="156.91" y2="21.25" stroke="#008542" stroke-width="1.5" 
1859                              stroke-linecap="round"/> 
1860                        <line x1="162.072" y1="5.75" x2="162.072" y2="24.25" stroke="#008542" stroke-width="1.5" 
1861                              stroke-linecap="round"/> 
1862                        <line x1="167.234" y1="11.75" x2="167.234" y2="18.25" stroke="#008542" stroke-width="1.5" 
1863                              stroke-linecap="round"/> 
1864                        <line x1="172.395" y1="9.75" x2="172.395" y2="20.25" stroke="#008542" stroke-width="1.5" 
1865                              stroke-linecap="round"/> 
1866                        <line x1="177.557" y1="9.75" x2="177.557" y2="19.25" stroke="#008542" stroke-width="1.5" 
1867                              stroke-linecap="round"/> 
1868                        <line x1="181.686" y1="1.75" x2="181.686" y2="28.25" stroke="#008542" stroke-width="1.5" 
1869                              stroke-linecap="round"/> 
1870                        <line x1="186.848" y1="12.75" x2="186.848" y2="17.25" stroke="#008542" stroke-width="1.5" 
1871                              stroke-linecap="round"/> 
1872                        <line x1="192.008" y1="13.75" x2="192.008" y2="16.25" stroke="#008542" stroke-width="1.5" 
1873                              stroke-linecap="round"/> 
1874                        <line x1="197.17" y1="10.75" x2="197.17" y2="19.25" stroke="#008542" stroke-width="1.5" 
1875                              stroke-linecap="round"/> 
1876                        <line x1="202.33" y1="8.75" x2="202.33" y2="20.25" stroke="#008542" stroke-width="1.5" 
1877                              stroke-linecap="round"/> 
1878                        <line x1="207.492" y1="0.75" x2="207.492" y2="29.25" stroke="#008542" stroke-width="1.5" 
1879                              stroke-linecap="round"/> 
1880                        <line x1="212.652" y1="7.75" x2="212.652" y2="21.25" stroke="#008542" stroke-width="1.5" 
1881                              stroke-linecap="round"/> 
1882                        <line x1="217.814" y1="5.75" x2="217.814" y2="24.25" stroke="#008542" stroke-width="1.5" 
1883                              stroke-linecap="round"/> 
1884                        <line x1="222.977" y1="11.75" x2="222.977" y2="18.25" stroke="#008542" stroke-width="1.5" 
1885                              stroke-linecap="round"/> 
1886                        <line x1="228.137" y1="9.75" x2="228.137" y2="20.25" stroke="#008542" stroke-width="1.5" 
1887                              stroke-linecap="round"/> 
1888                        <line x1="233.299" y1="9.75" x2="233.299" y2="19.25" stroke="#008542" stroke-width="1.5" 
1889                              stroke-linecap="round"/> 
1890                        <line x1="237.428" y1="1.75" x2="237.428" y2="28.25" stroke="#008542" stroke-width="1.5" 
1891                              stroke-linecap="round"/> 
1892                        <line x1="242.588" y1="12.75" x2="242.588" y2="17.25" stroke="#008542" stroke-width="1.5" 
1893                              stroke-linecap="round"/> 
1894                        <line x1="247.75" y1="13.75" x2="247.75" y2="16.25" stroke="#008542" stroke-width="1.5" 
1895                              stroke-linecap="round"/> 
1896                        <line x1="252.91" y1="10.75" x2="252.91" y2="19.25" stroke="#008542" stroke-width="1.5" 
1897                              stroke-linecap="round"/> 
1898                        <line x1="258.072" y1="8.75" x2="258.072" y2="20.25" stroke="#008542" stroke-width="1.5" 
1899                              stroke-linecap="round"/> 
1900                        <line x1="263.234" y1="0.75" x2="263.234" y2="29.25" stroke="#008542" stroke-width="1.5" 
1901                              stroke-linecap="round"/> 
1902                        <line x1="268.395" y1="7.75" x2="268.395" y2="21.25" stroke="#008542" stroke-width="1.5" 
1903                              stroke-linecap="round"/> 
1904                        <line x1="273.557" y1="5.75" x2="273.557" y2="24.25" stroke="#008542" stroke-width="1.5" 
1905                              stroke-linecap="round"/> 
1906                        <line x1="278.717" y1="11.75" x2="278.717" y2="18.25" stroke="#008542" stroke-width="1.5" 
1907                              stroke-linecap="round"/> 
1908                        <line x1="283.879" y1="9.75" x2="283.879" y2="20.25" stroke="#008542" stroke-width="1.5" 
1909                              stroke-linecap="round"/> 
1910                        <line x1="289.041" y1="9.75" x2="289.041" y2="19.25" stroke="#008542" stroke-width="1.5" 
1911                              stroke-linecap="round"/> 
1912                        <line x1="293.17" y1="1.75" x2="293.17" y2="28.25" stroke="#008542" stroke-width="1.5" 
1913                              stroke-linecap="round"/> 
1914                        <line x1="298.33" y1="12.75" x2="298.33" y2="17.25" stroke="#008542" stroke-width="1.5" 
1915                              stroke-linecap="round"/> 
1916                        <line x1="302.75" y1="10.75" x2="302.75" y2="19.25" stroke="#008542" stroke-width="1.5" 
1917                              stroke-linecap="round"/> 
1918                        <line x1="307.912" y1="8.75" x2="307.912" y2="20.25" stroke="#008542" stroke-width="1.5" 
1919                              stroke-linecap="round"/> 
1920                        <line x1="313.072" y1="0.75" x2="313.072" y2="29.25" stroke="#008542" stroke-width="1.5" 
1921                              stroke-linecap="round"/> 
1922                        <line x1="318.234" y1="7.75" x2="318.234" y2="21.25" stroke="#008542" stroke-width="1.5" 
1923                              stroke-linecap="round"/> 
1924                        <line x1="323.395" y1="5.75" x2="323.395" y2="24.25" stroke="#008542" stroke-width="1.5" 
1925                              stroke-linecap="round"/> 
1926                        <line x1="328.557" y1="11.75" x2="328.557" y2="18.25" stroke="#008542" stroke-width="1.5" 
1927                              stroke-linecap="round"/> 
1928                        <line x1="333.719" y1="9.75" x2="333.719" y2="20.25" stroke="#008542" stroke-width="1.5" 
1929                              stroke-linecap="round"/> 
1930                        <line x1="338.879" y1="9.75" x2="338.879" y2="19.25" stroke="#008542" stroke-width="1.5" 
1931                              stroke-linecap="round"/> 
1932                        <line x1="343.008" y1="1.75" x2="343.008" y2="28.25" stroke="#008542" stroke-width="1.5" 
1933                              stroke-linecap="round"/> 
1934                        <line x1="348.17" y1="12.75" x2="348.17" y2="17.25" stroke="#008542" stroke-width="1.5" 
1935                              stroke-linecap="round"/> 
1936                        <line x1="353.33" y1="13.75" x2="353.33" y2="16.25" stroke="#008542" stroke-width="1.5" 
1937                              stroke-linecap="round"/> 
1938                        <line x1="358.492" y1="10.75" x2="358.492" y2="19.25" stroke="#008542" stroke-width="1.5" 
1939                              stroke-linecap="round"/> 
1940                        <line x1="363.652" y1="8.75" x2="363.652" y2="20.25" stroke="#008542" stroke-width="1.5" 
1941                              stroke-linecap="round"/> 
1942                        <line x1="368.814" y1="0.75" x2="368.814" y2="29.25" stroke="#008542" stroke-width="1.5" 
1943                              stroke-linecap="round"/> 
1944                        <line x1="373.977" y1="7.75" x2="373.977" y2="21.25" stroke="#008542" stroke-width="1.5" 
1945                              stroke-linecap="round"/> 
1946                        <line x1="379.137" y1="5.75" x2="379.137" y2="24.25" stroke="#008542" stroke-width="1.5" 
1947                              stroke-linecap="round"/> 
1948                        <line x1="384.299" y1="11.75" x2="384.299" y2="18.25" stroke="#008542" stroke-width="1.5" 
1949                              stroke-linecap="round"/> 
1950                        <line x1="389.459" y1="9.75" x2="389.459" y2="20.25" stroke="#008542" stroke-width="1.5" 
1951                              stroke-linecap="round"/> 
1952                        <line x1="394.621" y1="9.75" x2="394.621" y2="19.25" stroke="#008542" stroke-width="1.5" 
1953                              stroke-linecap="round"/> 
1954                        <line x1="398.75" y1="1.75" x2="398.75" y2="28.25" stroke="#008542" stroke-width="1.5" 
1955                              stroke-linecap="round"/> 
1956                        <line x1="403.912" y1="12.75" x2="403.912" y2="17.25" stroke="#008542" stroke-width="1.5" 
1957                              stroke-linecap="round"/> 
1958                        <line x1="408.33" y1="10.75" x2="408.33" y2="19.25" stroke="#008542" stroke-width="1.5" 
1959                              stroke-linecap="round"/> 
1960                        <line x1="413.492" y1="8.75" x2="413.492" y2="20.25" stroke="#008542" stroke-width="1.5" 
1961                              stroke-linecap="round"/> 
1962                        <line x1="418.654" y1="0.75" x2="418.654" y2="29.25" stroke="#008542" stroke-width="1.5" 
1963                              stroke-linecap="round"/> 
1964                        <line x1="423.814" y1="7.75" x2="423.814" y2="21.25" stroke="#008542" stroke-width="1.5" 
1965                              stroke-linecap="round"/> 
1966                        <line x1="428.977" y1="5.75" x2="428.977" y2="24.25" stroke="#008542" stroke-width="1.5" 
1967                              stroke-linecap="round"/> 
1968                        <line x1="434.137" y1="11.75" x2="434.137" y2="18.25" stroke="#008542" stroke-width="1.5" 
1969                              stroke-linecap="round"/> 
1970                        <line x1="439.299" y1="9.75" x2="439.299" y2="20.25" stroke="#008542" stroke-width="1.5" 
1971                              stroke-linecap="round"/> 
1972                        <line x1="444.461" y1="9.75" x2="444.461" y2="19.25" stroke="#008542" stroke-width="1.5" 
1973                              stroke-linecap="round"/> 
1974                        <line x1="448.59" y1="1.75" x2="448.59" y2="28.25" stroke="#008542" stroke-width="1.5" 
1975                              stroke-linecap="round"/> 
1976                        <line x1="453.75" y1="12.75" x2="453.75" y2="17.25" stroke="#008542" stroke-width="1.5" 
1977                              stroke-linecap="round"/> 
1978                        <line x1="458.912" y1="13.75" x2="458.912" y2="16.25" stroke="#008542" stroke-width="1.5" 
1979                              stroke-linecap="round"/> 
1980                        <line x1="464.072" y1="10.75" x2="464.072" y2="19.25" stroke="#008542" stroke-width="1.5" 
1981                              stroke-linecap="round"/> 
1982                        <line x1="469.234" y1="8.75" x2="469.234" y2="20.25" stroke="#008542" stroke-width="1.5" 
1983                              stroke-linecap="round"/> 
1984                        <line x1="474.395" y1="0.75" x2="474.395" y2="29.25" stroke="#008542" stroke-width="1.5" 
1985                              stroke-linecap="round"/> 
1986                        <line x1="479.557" y1="7.75" x2="479.557" y2="21.25" stroke="#008542" stroke-width="1.5" 
1987                              stroke-linecap="round"/> 
1988                        <line x1="484.719" y1="5.75" x2="484.719" y2="24.25" stroke="#008542" stroke-width="1.5" 
1989                              stroke-linecap="round"/> 
1990                        <line x1="489.879" y1="11.75" x2="489.879" y2="18.25" stroke="#008542" stroke-width="1.5" 
1991                              stroke-linecap="round"/> 
1992                        <line x1="495.041" y1="9.75" x2="495.041" y2="20.25" stroke="#008542" stroke-width="1.5" 
1993                              stroke-linecap="round"/> 
1994                        <line x1="500.201" y1="9.75" x2="500.201" y2="19.25" stroke="#008542" stroke-width="1.5" 
1995                              stroke-linecap="round"/> 
1996                        <line x1="504.33" y1="1.75" x2="504.33" y2="28.25" stroke="#008542" stroke-width="1.5" 
1997                              stroke-linecap="round"/> 
1998                        <line x1="509.492" y1="12.75" x2="509.492" y2="17.25" stroke="#008542" stroke-width="1.5" 
1999                              stroke-linecap="round"/> 
2000                        <line x1="513.912" y1="10.75" x2="513.912" y2="19.25" stroke="#008542" stroke-width="1.5" 
2001                              stroke-linecap="round"/> 
2002                        <line x1="519.072" y1="8.75" x2="519.072" y2="20.25" stroke="#008542" stroke-width="1.5" 
2003                              stroke-linecap="round"/> 
2004                        <line x1="524.234" y1="0.75" x2="524.234" y2="29.25" stroke="#008542" stroke-width="1.5" 
2005                              stroke-linecap="round"/> 
2006                        <line x1="529.395" y1="7.75" x2="529.395" y2="21.25" stroke="#008542" stroke-width="1.5" 
2007                              stroke-linecap="round"/> 
2008                        <line x1="534.557" y1="5.75" x2="534.557" y2="24.25" stroke="#008542" stroke-width="1.5" 
2009                              stroke-linecap="round"/> 
2010                        <line x1="539.719" y1="11.75" x2="539.719" y2="18.25" stroke="#008542" stroke-width="1.5" 
2011                              stroke-linecap="round"/> 
2012                        <line x1="544.879" y1="9.75" x2="544.879" y2="20.25" stroke="#008542" stroke-width="1.5" 
2013                              stroke-linecap="round"/> 
2014                        <line x1="550.041" y1="9.75" x2="550.041" y2="19.25" stroke="#008542" stroke-width="1.5" 
2015                              stroke-linecap="round"/> 
2016                        <line x1="554.17" y1="1.75" x2="554.17" y2="28.25" stroke="#008542" stroke-width="1.5" 
2017                              stroke-linecap="round"/> 
2018                        <line x1="559.332" y1="12.75" x2="559.332" y2="17.25" stroke="#008542" stroke-width="1.5" 
2019                              stroke-linecap="round"/> 
2020                        <line x1="564.492" y1="13.75" x2="564.492" y2="16.25" stroke="#008542" stroke-width="1.5" 
2021                              stroke-linecap="round"/> 
2022                        <line x1="569.654" y1="10.75" x2="569.654" y2="19.25" stroke="#008542" stroke-width="1.5" 
2023                              stroke-linecap="round"/> 
2024                        <line x1="574.814" y1="8.75" x2="574.814" y2="20.25" stroke="#008542" stroke-width="1.5" 
2025                              stroke-linecap="round"/> 
2026                        <line x1="579.977" y1="0.75" x2="579.977" y2="29.25" stroke="#008542" stroke-width="1.5" 
2027                              stroke-linecap="round"/> 
2028                        <line x1="585.137" y1="7.75" x2="585.137" y2="21.25" stroke="#008542" stroke-width="1.5" 
2029                              stroke-linecap="round"/> 
2030                        <line x1="590.299" y1="5.75" x2="590.299" y2="24.25" stroke="#008542" stroke-width="1.5" 
2031                              stroke-linecap="round"/> 
2032                    </g> 
2033                    <defs> 
2034                        <clipPath id="clip0_2625_8152"> 
2035                            <rect width="590" height="30" fill="white"/> 
2036                        </clipPath> 
2037                    </defs> 
2038                </svg> 
2039                <svg class="audio-sondwave-mobile" width="100%" height="100%" viewBox="0 0 102 30" fill="none" 
2040                     xmlns="http://www.w3.org/2000/svg"> 
2041                    <g clip-path="url(#clip0_2625_8922)"> 
2042                        <line x1="0.75" y1="0.75" x2="0.749999" y2="29.25" stroke="#008542" stroke-width="1.5" 
2043                              stroke-linecap="round"/> 
2044                        <line x1="5.91016" y1="7.75" x2="5.91016" y2="21.25" stroke="#008542" stroke-width="1.5" 
2045                              stroke-linecap="round"/> 
2046                        <line x1="11.0723" y1="5.75" x2="11.0723" y2="24.25" stroke="#008542" stroke-width="1.5" 
2047                              stroke-linecap="round"/> 
2048                        <line x1="16.2344" y1="11.75" x2="16.2344" y2="18.25" stroke="#008542" stroke-width="1.5" 
2049                              stroke-linecap="round"/> 
2050                        <line x1="21.3945" y1="9.75" x2="21.3945" y2="20.25" stroke="#008542" stroke-width="1.5" 
2051                              stroke-linecap="round"/> 
2052                        <line x1="26.5566" y1="9.75" x2="26.5566" y2="19.25" stroke="#008542" stroke-width="1.5" 
2053                              stroke-linecap="round"/> 
2054                        <line x1="30.6855" y1="1.75" x2="30.6855" y2="28.25" stroke="#008542" stroke-width="1.5" 
2055                              stroke-linecap="round"/> 
2056                        <line x1="35.8477" y1="12.75" x2="35.8477" y2="17.25" stroke="#008542" stroke-width="1.5" 
2057                              stroke-linecap="round"/> 
2058                        <line x1="41.0078" y1="13.75" x2="41.0078" y2="16.25" stroke="#008542" stroke-width="1.5" 
2059                              stroke-linecap="round"/> 
2060                        <line x1="46.1699" y1="10.75" x2="46.1699" y2="19.25" stroke="#008542" stroke-width="1.5" 
2061                              stroke-linecap="round"/> 
2062                        <line x1="51.3301" y1="8.75" x2="51.3301" y2="20.25" stroke="#008542" stroke-width="1.5" 
2063                              stroke-linecap="round"/> 
2064                        <line x1="56.4922" y1="0.75" x2="56.4922" y2="29.25" stroke="#008542" stroke-width="1.5" 
2065                              stroke-linecap="round"/> 
2066                        <line x1="61.6523" y1="7.75" x2="61.6523" y2="21.25" stroke="#008542" stroke-width="1.5" 
2067                              stroke-linecap="round"/> 
2068                        <line x1="66.8145" y1="5.75" x2="66.8145" y2="24.25" stroke="#008542" stroke-width="1.5" 
2069                              stroke-linecap="round"/> 
2070                        <line x1="71.9766" y1="11.75" x2="71.9766" y2="18.25" stroke="#008542" stroke-width="1.5" 
2071                              stroke-linecap="round"/> 
2072                        <line x1="77.1367" y1="9.75" x2="77.1367" y2="20.25" stroke="#008542" stroke-width="1.5" 
2073                              stroke-linecap="round"/> 
2074                        <line x1="82.2988" y1="9.75" x2="82.2988" y2="19.25" stroke="#008542" stroke-width="1.5" 
2075                              stroke-linecap="round"/> 
2076                        <line x1="86.4277" y1="1.75" x2="86.4277" y2="28.25" stroke="#008542" stroke-width="1.5" 
2077                              stroke-linecap="round"/> 
2078                        <line x1="91.5879" y1="12.75" x2="91.5879" y2="17.25" stroke="#008542" stroke-width="1.5" 
2079                              stroke-linecap="round"/> 
2080                        <line x1="96.75" y1="13.75" x2="96.75" y2="16.25" stroke="#008542" stroke-width="1.5" 
2081                              stroke-linecap="round"/> 
2082                        <line x1="101.91" y1="10.75" x2="101.91" y2="19.25" stroke="#008542" stroke-width="1.5" 
2083                              stroke-linecap="round"/> 
2084                    </g> 
2085                    <defs> 
2086                        <clipPath id="clip0_2625_8922"> 
2087                            <rect width="102" height="30" fill="white"/> 
2088                        </clipPath> 
2089                    </defs> 
2090                </svg> 
2091            </div> 
2092            <div class="audio-time paragraph-micro-bold"> 00:00</div> 
2093            <div class="audio-button-mute"> 
2094                <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32" fill="none"> 
2095                    <path d="M27.3625 9.6375C28.1993 10.4723 28.8632 11.464 29.3161 12.5558C29.7691 13.6476 30.0023 14.818 30.0023 16C30.0023 17.182 29.7691 18.3524 29.3161 19.4442C28.8632 20.536 28.1993 21.5277 27.3625 22.3625M10 21H4C3.73478 21 3.48043 20.8946 3.29289 20.7071C3.10536 20.5196 3 20.2652 3 20V12C3 11.7348 3.10536 11.4804 3.29289 11.2929C3.48043 11.1054 3.73478 11 4 11H10M10 21L19 28V4L10 11M10 21V11M23.825 13.175C24.1969 13.5455 24.492 13.9857 24.6933 14.4705C24.8947 14.9553 24.9983 15.4751 24.9983 16C24.9983 16.5249 24.8947 17.0447 24.6933 17.5295C24.492 18.0143 24.1969 18.4545 23.825 18.825" 
2096                          stroke="#525252" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 
2097                </svg> 
2098            </div> 
2099        </div> 
2100    </div> 
2101 
2102    <style> 
2103        .ptb-news__read-news .news-content { 
2104            gap: var(--space-xl, 44px); 
2105            padding-bottom: var(--space-giant, 80px); 
2106
2107 
2108        .ptb-news__read-news .news-content strong { 
2109            font-weight: var(--font-weight-bold); 
2110
2111 
2112        .ptb-news__read-news .news-content em { 
2113            font-style: var(--font-style-italic); 
2114
2115 
2116        .ptb-news__read-news .news-content a { 
2117            font-family: var(--font-family-base); 
2118            font-style: var(--font-style-normal, normal); 
2119            font-weight: var(--font-weight-bold, 700); 
2120            font-size: var(--font-size-xs, 18px); 
2121            line-height: var(--line-height-xl, 160%); 
2122 
2123            text-decoration-line: var(--text-decoration-underline, underline); 
2124            color: #008542; 
2125
2126 
2127        body.high-contrast-active .ptb-news__read-news .news-content a { 
2128            color: #E4F7E8; 
2129
2130 
2131        .ptb-news__read-news cite a { 
2132            font-family: var(--font-family-base); 
2133            font-style: var(--font-style-normal, normal); 
2134            font-weight: var(--font-weight-bold, 700); 
2135            font-size: var(--font-size-xs, 18px); 
2136            line-height: var(--line-height-xl, 160%); 
2137 
2138            text-decoration-line: var(--text-decoration-underline, underline); 
2139            color: #008542; 
2140
2141 
2142        body.high-contrast-active .cite a { 
2143            color: #E4F7E8; 
2144
2145 
2146        .ptb-news__read-news .news-content ul { 
2147            padding-left: 27px; 
2148            margin-top: -16px; 
2149
2150 
2151        .ptb-news__read-news .news-content ul li::marker { 
2152            content: "■" !important; 
2153            color: var(--color-secondary-medium) !important; 
2154            font-size: var(--size-xxs); 
2155
2156 
2157        .ptb-news__read-news .news-content ul li { 
2158            color: var(--color-text-primary-default); 
2159            padding: 8px 0; 
2160 
2161            /*paragraph-sm-regular*/ 
2162            font-size: var(--font-size-xxs); 
2163            line-height: var(--line-height-xl); 
2164            font-weight: var(--font-weight-regular); 
2165            font-style: var(--font-style-normal); 
2166            text-decoration: var(--text-decoration-none); 
2167 
2168            margin-left: calc(-1 * var(--space-sm)); 
2169            padding-left: var(--space-sm); 
2170
2171 
2172        .ptb-news__read-news .news-content ul li * { 
2173            color: var(--color-text-primary-default); 
2174            padding: 8px 0; 
2175 
2176            /*paragraph-sm-regular*/ 
2177            font-size: var(--font-size-xxs); 
2178            line-height: var(--line-height-xl); 
2179            font-weight: var(--font-weight-regular); 
2180            font-style: var(--font-style-normal); 
2181            text-decoration: var(--text-decoration-none); 
2182
2183 
2184        .ptb-news__read-news .news-content > * { 
2185            grid-column-start: 3; 
2186            grid-column-end: 11; 
2187
2188 
2189        .ptb-news__read-news .news-content figure figcaption { 
2190            display: flex; 
2191            justify-content: space-between; 
2192            align-items: flex-start; 
2193            align-self: stretch; 
2194            margin-top: var(--space-xxs, 8px); 
2195            text-align: justify; 
2196
2197 
2198        .ptb-news__read-news .news-content figure figcaption, 
2199        .ptb-news__read-news .news-content figure figcaption * { 
2200            color: var(--color-neutral-700, #525252); 
2201            font-family: var(--font-family-base); 
2202            font-size: var(--font-size-xxxs, 14px); 
2203            font-style: var(--font-style-italic, italic); 
2204            font-weight: var(--font-weight-regular, 400); 
2205            line-height: var(--line-height-xl, 160%); 
2206
2207 
2208        body.high-contrast-active .ptb-news__read-news .news-content figure figcaption, 
2209        body.high-contrast-active .ptb-news__read-news .news-content figure figcaption * { 
2210            color: var(--text-secondary-default, #F8F8F8); 
2211
2212 
2213        .ptb-news__read-news .news-content figure figcaption br { 
2214            display: none; 
2215
2216 
2217        .ptb-news__read-news .news-content .embed-responsive { 
2218            width: 100% !important; 
2219            border-radius: var(--border-radius-md, 16px); 
2220
2221 
2222        .ptb-news__read-news .news-content img, 
2223        .ptb-news__read-news .news-content figure { 
2224            width: 100%; 
2225            object-fit: cover; 
2226            border-radius: var(--border-radius-md, 16px); 
2227
2228 
2229 
2230        .ptb-news__read-news .news-content p img { 
2231            width: 100%; 
2232            object-fit: cover; 
2233            border-radius: var(--border-radius-md, 16px); 
2234
2235 
2236        .ptb-news__read-news .news-content p, 
2237        .ptb-news__read-news .news-content span { 
2238            margin: 0; 
2239            padding: 0; 
2240
2241 
2242        .ptb-news__read-news .news-content p { 
2243            margin: -var(--space-xxs, 8px) 0; 
2244
2245 
2246        .ptb-news__read-news .news-content .carousel p { 
2247            margin: 0; 
2248
2249 
2250        .ptb-news__read-news .news-content .paragraph_separator { 
2251            display: flex; 
2252            width: 100%; 
2253            height: fit-content; 
2254            justify-content: center; 
2255            gap: 6px; 
2256
2257 
2258        .ptb-news__read-news .news-content .paragraph_separator .dot { 
2259            height: 4px; 
2260            width: 4px; 
2261            background-color: var(--color-neutral-600, #959595); 
2262            border-radius: 100%; 
2263            display: inline-block; 
2264
2265 
2266        .ptb-news__read-news .news-content * { 
2267            font-family: var(--font-family-base); 
2268            font-style: var(--font-style-normal, normal); 
2269            font-weight: var(--font-weight-regular, 400); 
2270            font-size: var(--font-size-xs, 18px); 
2271            line-height: var(--line-height-xl, 160%); 
2272            color: var(--color-neutral-800, #373737); 
2273
2274 
2275        body.high-contrast-active .ptb-news__read-news .news-content * { 
2276            color: var(--text-primary-default, var(--color-neutral-100)); 
2277
2278 
2279        .ptb-news__read-news .news-content p { 
2280            font-style: var(--font-style-normal, normal); 
2281            font-weight: var(--font-weight-regular, 400); 
2282            font-size: var(--font-size-xs, 16px); 
2283            line-height: var(--line-height-xl, 160%); 
2284            color: var(--color-neutral-700, #515867); 
2285
2286 
2287 
2288        .ptb-news__read-news .news-content h1, 
2289        .ptb-news__read-news .news-content h1 *, 
2290        .ptb-news__read-news .news-content h2, 
2291        .ptb-news__read-news .news-content h2 *, 
2292        .ptb-news__read-news .news-content h3, 
2293        .ptb-news__read-news .news-content h3 *, 
2294        .ptb-news__read-news .news-content h4, 
2295        .ptb-news__read-news .news-content h4 *, 
2296        .ptb-news__read-news .news-content h5, 
2297        .ptb-news__read-news .news-content h5 *, 
2298        .ptb-news__read-news .news-content h6, 
2299        .ptb-news__read-news .news-content h6 * { 
2300            color: var(--color-neutral-800, #373737) !important; 
2301
2302 
2303        body.high-contrast-active .ptb-news__read-news .news-content h1, 
2304        body.high-contrast-active .ptb-news__read-news .news-content h1 *, 
2305        body.high-contrast-active .ptb-news__read-news .news-content h2, 
2306        body.high-contrast-active .ptb-news__read-news .news-content h2 *, 
2307        body.high-contrast-active .ptb-news__read-news .news-content h3, 
2308        body.high-contrast-active .ptb-news__read-news .news-content h3 *, 
2309        body.high-contrast-active .ptb-news__read-news .news-content h4, 
2310        body.high-contrast-active .ptb-news__read-news .news-content h4 *, 
2311        body.high-contrast-active .ptb-news__read-news .news-content h5, 
2312        body.high-contrast-active .ptb-news__read-news .news-content h5 *, 
2313        body.high-contrast-active .ptb-news__read-news .news-content h6, 
2314        body.high-contrast-active .ptb-news__read-news .news-content h6 * { 
2315            color: var(--text-primary-default, var(--color-neutral-100)) !important; 
2316
2317 
2318        .ptb-news__read-news .news-content h1:last-child, 
2319        .ptb-news__read-news .news-content h2:last-child, 
2320        .ptb-news__read-news .news-content h3:last-child, 
2321        .ptb-news__read-news .news-content h4:last-child, 
2322        .ptb-news__read-news .news-content h5:last-child, 
2323        .ptb-news__read-news .news-content h5:last-child, 
2324        .ptb-news__read-news .news-content h6:last-child, 
2325        .ptb-news__read-news .news-content p:last-child { 
2326            padding-bottom: 0 !important; 
2327
2328 
2329        .ptb-news__read-news .news-content h1, 
2330        .ptb-news__read-news .news-content h1 * { 
2331            font-size: var(--font-size-xxl) !important; 
2332            line-height: var(--line-height-sm) !important; 
2333            font-weight: var(--font-weight-bold) !important; 
2334            font-style: var(--font-style-normal) !important; 
2335            text-decoration: var(--text-decoration-none) !important; 
2336
2337 
2338        .ptb-news__read-news .news-content h2, 
2339        .ptb-news__read-news .news-content h2 * { 
2340            font-size: var(--font-size-xl) !important; 
2341            line-height: var(--line-height-sm) !important; 
2342            font-weight: var(--font-weight-bold) !important; 
2343            font-style: var(--font-style-normal) !important; 
2344            text-decoration: var(--text-decoration-none) !important; 
2345 
2346
2347 
2348        .ptb-news__read-news .news-content h3, 
2349        .ptb-news__read-news .news-content h3 * { 
2350            font-size: var(--font-size-lg) !important; 
2351            line-height: var(--line-height-sm) !important; 
2352            font-weight: var(--font-weight-bold) !important; 
2353            font-style: var(--font-style-normal) !important; 
2354            text-decoration: var(--text-decoration-none) !important; 
2355
2356 
2357        .ptb-news__read-news .news-content h4, 
2358        .ptb-news__read-news .news-content h4 * { 
2359            font-size: var(--font-size-md) !important; 
2360            line-height: var(--line-height-md) !important; 
2361            font-weight: var(--font-weight-bold) !important; 
2362            font-style: var(--font-style-normal) !important; 
2363            text-decoration: var(--text-decoration-none) !important; 
2364
2365 
2366        .ptb-news__read-news .news-content h5, 
2367        .ptb-news__read-news .news-content h5 * { 
2368            font-size: var(--font-size-sm) !important; 
2369            line-height: var(--line-height-md) !important; 
2370            font-weight: var(--font-weight-bold) !important; 
2371            font-style: var(--font-style-normal) !important; 
2372            text-decoration: var(--text-decoration-none) !important; 
2373
2374 
2375        .ptb-news__read-news .news-content table { 
2376            border-collapse: collapse; 
2377            border: none; 
2378            width: 100% !important; 
2379            margin: var(--space-sm, 16px) 0; 
2380
2381 
2382        .ptb-news__read-news .news-content table * { 
2383            font-size: var(--font-size-xxs, 16px); 
2384            font-style: var(--font-style-normal, normal); 
2385            font-weight: var(--font-weight-regular, 400); 
2386            line-height: var(--line-height-xl, 160%); 
2387            color: var(--color-neutral-800, #373737); 
2388            border: 0; 
2389
2390 
2391        body.high-contrast-active .ptb-news__read-news .news-content table * { 
2392            color: var(--text-primary-default, var(--color-neutral-100)); 
2393
2394 
2395        .ptb-news__read-news .news-content table tbody > :first-child, 
2396        .ptb-news__read-news .news-content table tbody > :first-child * { 
2397            font-weight: var(--font-weight-bold, 700); 
2398            flex: 1 0 0; 
2399            background: var(--background-Surface-level-02, #F8F8F8); 
2400
2401 
2402        body.high-contrast-active .ptb-news__read-news .news-content table tbody > :first-child, 
2403        body.high-contrast-active .ptb-news__read-news .news-content table tbody > :first-child * { 
2404            background: #373737; 
2405
2406 
2407        .ptb-news__read-news .news-content table tbody { 
2408            display: flex; 
2409            flex-direction: column; 
2410
2411 
2412        .ptb-news__read-news .news-content table tbody * { 
2413            display: flex; 
2414					  height: 100%; 
2415            align-items: center; 
2416            flex: 1 0 0; 
2417
2418 
2419        .ptb-news__read-news .news-content table tbody tr * {          
2420           padding: 23px var(--space-lg, 32px); 
2421
2422 
2423        .ptb-news__read-news .news-content table tbody tr { 
2424            border-radius: var(--border-radius-md); 
2425            border: var(--border-width-hairline, 1px) solid #EEEEEE; 
2426
2427 
2428        body.high-contrast-active .ptb-news__read-news .news-content table tbody tr { 
2429            border: var(--border-width-hairline, 1px) solid #525252; 
2430
2431 
2432        .ptb-news__read-news .news-content table tbody tr:not(:last-child) { 
2433            border-bottom-left-radius: 0; 
2434            border-bottom-right-radius: 0; 
2435
2436 
2437        .ptb-news__read-news .news-content table tbody tr:not(:first-child) { 
2438            border-top-left-radius: 0; 
2439            border-top-right-radius: 0; 
2440            border-top: none; 
2441
2442 
2443        .ptb-news__read-news .news-content table tbody tr td:not(:last-child) { 
2444            border-right: var(--border-width-hairline, 1px) solid #EEEEEE; 
2445
2446 
2447        body.high-contrast-active .ptb-news__read-news .news-content table tbody tr td:not(:last-child) { 
2448            border-right: var(--border-width-hairline, 1px) solid #525252; 
2449
2450 
2451        .ptb-news__read-news .news-content table tbody tr:first-child td { 
2452            border-top: var(--border-width-hairline, 1px) solid #EEEEEE; 
2453            border-bottom: var(--border-width-hairline, 1px) solid #EEEEEE; 
2454
2455 
2456        body.high-contrast-active .ptb-news__read-news .news-content table tbody tr:first-child td { 
2457            border-top: var(--border-width-hairline, 1px) solid #525252; 
2458            border-bottom: var(--border-width-hairline, 1px) solid #525252; 
2459
2460 
2461        .ptb-news__read-news .news-content audio { 
2462            display: none; 
2463
2464 
2465        .ptb-news__read-news .news-content .audio-template { 
2466            display: flex; 
2467            padding: var(--space-sm, 16px); 
2468            align-items: center; 
2469            gap: var(--space-md, 24px); 
2470            align-self: stretch; 
2471            border-radius: var(--border-radius-lg, 16px); 
2472            border: var(--border-width-hairline, 1px) solid var(--border-color-mid); 
2473            background: var(--background-card-default, #FFF); 
2474            max-height: var(--size-giant, 72px); 
2475
2476 
2477        body.high-contrast-active .ptb-news__read-news .news-content .audio-template { 
2478            background: var(--background-card-default, #010101); 
2479            border: var(--border-width-hairline, 1px) solid #525252; 
2480
2481 
2482        .ptb-news__read-news .news-content .audio-template .audio-button-play { 
2483            display: flex; 
2484            width: var(--size-xl, 40px); 
2485            height: var(--size-xl, 40px); 
2486            justify-content: center; 
2487            align-items: center; 
2488            flex-grow: 0; 
2489            flex-shrink: 0; 
2490            cursor: pointer; 
2491
2492 
2493        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-button-play .audio-play-icon, 
2494        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-button-play .audio-pause-icon { 
2495            fill: #FFFFFF; 
2496
2497 
2498        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-button-play .audio-play-icon path, 
2499        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-button-play .audio-pause-icon path { 
2500            fill: #010101; 
2501
2502 
2503        .ptb-news__read-news .news-content .audio-template.audio-pause .audio-button-play .audio-play-icon { 
2504            display: block; 
2505
2506 
2507        .ptb-news__read-news .news-content .audio-template.audio-pause .audio-button-play .audio-pause-icon { 
2508            display: none; 
2509
2510 
2511        .ptb-news__read-news .news-content .audio-template.audio-play .audio-button-play .audio-play-icon { 
2512            display: none; 
2513
2514 
2515        .ptb-news__read-news .news-content .audio-template.audio-play .audio-button-play .audio-pause-icon { 
2516            display: block; 
2517
2518 
2519        .ptb-news__read-news .news-content .audio-template .audio-sondwave { 
2520            display: flex; 
2521            flex-direction: column; 
2522            align-items: flex-start; 
2523            gap: var(--space-xxs, 8px); 
2524            flex: 1 0 0; 
2525            height: 100%; 
2526            flex-grow: 1; 
2527            flex-shrink: 1; 
2528
2529 
2530        .ptb-news__read-news .news-content .audio-template .audio-sondwave line { 
2531            stroke: #008542; 
2532
2533 
2534        .ptb-news__read-news .news-content .audio-template .audio-sondwave line.line-active { 
2535            stroke: #90EE90; 
2536
2537 
2538        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-sondwave line { 
2539            stroke: #E4F7E8; 
2540
2541 
2542        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-sondwave line.line-active { 
2543            stroke: #666666; 
2544
2545 
2546        .ptb-news__read-news .news-content .audio-template .audio-sondwave .audio-sondwave-mobile { 
2547            display: none; 
2548
2549 
2550        .ptb-news__read-news .news-content .audio-template .audio-time { 
2551            display: flex; 
2552            flex-direction: column; 
2553            align-items: flex-start; 
2554            gap: var(--space-xxs, 8px); 
2555            flex: 1 0 0; 
2556            color: var(--text-primary-accent, #008542); 
2557            text-align: center; 
2558            font-family: var(--font-family-base); 
2559            line-height: 124% !important; 
2560            flex-grow: 0; 
2561            flex-shrink: 0; 
2562
2563 
2564        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-time { 
2565            color: var(--text-primary-accent, #E4F7E8); 
2566
2567 
2568        .ptb-news__read-news .news-content .audio-template .audio-button-mute { 
2569            width: var(--size-lg, 32px); 
2570            height: var(--size-lg, 32px); 
2571            flex-grow: 0; 
2572            flex-shrink: 0; 
2573            cursor: pointer; 
2574
2575 
2576        body.high-contrast-active .ptb-news__read-news .news-content .audio-template .audio-button-mute svg path { 
2577            stroke: white; 
2578            fill: none; 
2579
2580 
2581        .ptb-news__read-news .news-content .audio-template.audio-muted .audio-button-mute { 
2582            opacity: 0.6; 
2583
2584 
2585        @media screen and (max-width: 1024px) { 
2586            .ptb-news__read-news .news-content > * { 
2587                grid-column-start: 1; 
2588                grid-column-end: 9; 
2589
2590
2591 
2592        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
2593 
2594            .ptb-news__read-news .news-content * { 
2595                font-size: var(--font-size-xxs, 16px); 
2596
2597 
2598            .ptb-news__read-news .news-content > * { 
2599                grid-column-start: 1; 
2600                grid-column-end: 5; 
2601
2602 
2603            .ptb-news__read-news .news-content h1, 
2604            .ptb-news__read-news .news-content h1 * { 
2605                font-size: var(--font-size-xl) !important; 
2606                line-height: var(--line-height-sm) !important; 
2607                font-weight: var(--font-weight-bold) !important; 
2608                font-style: var(--font-style-normal) !important; 
2609                text-decoration: var(--text-decoration-none) !important; 
2610 
2611
2612 
2613            .ptb-news__read-news .news-content h2, 
2614            .ptb-news__read-news .news-content h2 * { 
2615                font-size: var(--font-size-lg) !important; 
2616                line-height: var(--line-height-sm) !important; 
2617                font-weight: var(--font-weight-bold) !important; 
2618                font-style: var(--font-style-normal) !important; 
2619                text-decoration: var(--text-decoration-none) !important; 
2620
2621 
2622            .ptb-news__read-news .news-content h3, 
2623            .ptb-news__read-news .news-content h3 * { 
2624                font-size: var(--font-size-md) !important; 
2625                line-height: var(--line-height-sm) !important; 
2626                font-weight: var(--font-weight-bold) !important; 
2627                font-style: var(--font-style-normal) !important; 
2628                text-decoration: var(--text-decoration-none) !important; 
2629
2630 
2631            .ptb-news__read-news .news-content h4, 
2632            .ptb-news__read-news .news-content h4 * { 
2633                font-size: var(--font-size-sm) !important; 
2634                line-height: var(--line-height-md) !important; 
2635                font-weight: var(--font-weight-bold) !important; 
2636                font-style: var(--font-style-normal) !important; 
2637                text-decoration: var(--text-decoration-none) !important; 
2638
2639 
2640            .ptb-news__read-news .news-content h5, 
2641            .ptb-news__read-news .news-content h5 * { 
2642                font-size: var(--font-size-xs) !important; 
2643                line-height: var(--line-height-md) !important; 
2644                font-weight: var(--font-weight-bold) !important; 
2645                font-style: var(--font-style-normal) !important; 
2646                text-decoration: var(--text-decoration-none) !important; 
2647
2648 
2649            .ptb-news__read-news .news-content figure figcaption { 
2650                flex-direction: column; 
2651                gap: var(--space-xxs, 8px); 
2652
2653 
2654            .ptb-news__read-news .news-content figure figcaption, 
2655            .ptb-news__read-news .news-content figure figcaption * { 
2656                font-size: var(--font-size-micro, 12px); 
2657
2658 
2659            .ptb-news__read-news .news-content table { 
2660                margin-top: var(--space-xxs, 8px); 
2661                margin-bottom: var(--space-lg, 32px); 
2662
2663 
2664            .ptb-news__read-news .news-content table * { 
2665                font-size: var(--font-size-micro, 12px); 
2666                line-height: 19.2px; 
2667
2668					 
2669            .ptb-news__read-news .news-content table tbody tr * { 
2670                padding: var(--space-xs, 12px); 
2671
2672
2673 
2674        @media screen and (max-width: 500px) { 
2675            .ptb-news__read-news .news-content .audio-template .audio-sondwave .audio-sondwave-desktop { 
2676                display: none; 
2677
2678 
2679            .ptb-news__read-news .news-content .audio-template .audio-sondwave .audio-sondwave-mobile { 
2680                display: block; 
2681
2682
2683    </style> 
2684 
2685    <script> 
2686        <#assign configureLinkTab = "configureLinkTab_" + randomNumber(5)> 
2687 
2688        function ${configureLinkTab}() { 
2689            const root = document.querySelector(".ptb-news__read-news"); 
2690            const newsContentElement = root.querySelector(".news-content"); 
2691            const pList = newsContentElement.querySelectorAll("p"); 
2692            pList.forEach((pElement) => { 
2693                const cont = pElement.innerHTML.trim(); 
2694                if (cont == "" || cont == "&nbsp;") { 
2695                    newsContentElement.removeChild(pElement); 
2696
2697            }); 
2698
2699 
2700        ${configureLinkTab}(); 
2701 
2702        document.addEventListener("DOMContentLoaded", () => { 
2703            const headers = document.querySelectorAll(".ptb-news__read-news .news-content h1, .ptb-news__read-news .news-content h2, .ptb-news__read-news .news-content h3, .ptb-news__read-news .news-content h4"); 
2704 
2705            headers.forEach((header) => { 
2706 
2707                const currentLevel = parseInt(header.tagName.charAt(1)); 
2708 
2709                if (currentLevel >= 1 && currentLevel <= 5) { 
2710 
2711                    const newLevel = currentLevel + 1; 
2712                    const newTagName = "h" + newLevel; 
2713 
2714                    // Criar a nova tag e transferir o conteúdo 
2715                    const newHeader = document.createElement(newTagName); 
2716                    newHeader.innerHTML = header.innerHTML; 
2717 
2718                    // Substituir a tag antiga pela nova 
2719                    header.parentNode.replaceChild(newHeader, header); 
2720
2721            }); 
2722        }); 
2723 
2724        AUI().ready(() => { 
2725            const audiosContainer = document.querySelectorAll(".ptb-news__read-news .news-content .audio-content"); 
2726            const audioTemplate = document.querySelector(".ptb-news__read-news .news-content .audio-template"); 
2727 
2728            audiosContainer.forEach((audioContainer) => { 
2729 
2730                const audio = audioContainer.querySelector("audio"); 
2731                const audioInterface = audioTemplate.cloneNode(true); 
2732 
2733                const sondwave = audioInterface.querySelector(".audio-sondwave"); 
2734                const linesDesktop = audioInterface.querySelectorAll(".audio-sondwave .audio-sondwave-desktop line"); 
2735                const linesMobile = audioInterface.querySelectorAll(".audio-sondwave .audio-sondwave-mobile line"); 
2736 
2737                const playPauseButtonAudioInterface = audioInterface.querySelector(".audio-button-play"); 
2738 
2739                playPauseButtonAudioInterface.addEventListener("click", () => { 
2740                    if (audioInterface.classList.contains("audio-play")) { 
2741                        audioInterface.classList.replace("audio-play", "audio-pause"); 
2742                        audio.pause(); 
2743                    } else { 
2744 
2745                        audiosContainer.forEach((audioContainer) => { 
2746                            const otherAudio = audioContainer.querySelector("audio"); 
2747                            const otherAudioInterface = audioContainer.querySelector(".audio-button-play"); 
2748                            !otherAudio.paused && otherAudioInterface.click(); 
2749                        }); 
2750 
2751                        audioInterface.classList.replace("audio-pause", "audio-play"); 
2752                        audio.play(); 
2753
2754                }); 
2755 
2756                const audioMuteButton = audioInterface.querySelector(".audio-button-mute"); 
2757 
2758                audioMuteButton.addEventListener("click", () => { 
2759                    if (audioInterface.classList.contains("audio-unmuted")) { 
2760                        audioInterface.classList.replace("audio-unmuted", "audio-muted"); 
2761                        audio.muted = true; 
2762                    } else { 
2763                        audioInterface.classList.replace("audio-muted", "audio-unmuted"); 
2764                        audio.muted = false; 
2765
2766                }); 
2767 
2768                const audioTime = audioInterface.querySelector(".audio-time"); 
2769                audioTime.textContent = Math.floor(audio.duration / 60) + ":" + Math.floor(audio.duration % 60); 
2770 
2771 
2772                audio.addEventListener("timeupdate", () => { 
2773                    let minutes = Math.floor((audio.duration - audio.currentTime) / 60); 
2774                    let seconds = Math.floor((audio.duration - audio.currentTime) % 60); 
2775 
2776                    minutes = minutes < 10 ? "0" + minutes : minutes; 
2777                    seconds = seconds < 10 ? "0" + seconds : seconds; 
2778 
2779                    audioTime.textContent = minutes + ":" + seconds; 
2780 
2781                    const progress = (audio.currentTime / audio.duration) * 100; 
2782 
2783                    linesDesktop.forEach(function (line, index) { 
2784                        const lineProgress = (index / linesDesktop.length) * 100; 
2785                        if (progress >= lineProgress) { 
2786                            !line.classList.contains("line-active") && line.classList.add("line-active"); 
2787                        } else { 
2788                            line.classList.contains("line-active") && line.classList.remove("line-active"); 
2789
2790                    }); 
2791 
2792                    linesMobile.forEach(function (line, index) { 
2793                        const lineProgress = (index / linesMobile.length) * 100; 
2794                        if (progress >= lineProgress) { 
2795                            !line.classList.contains("line-active") && line.classList.add("line-active"); 
2796                        } else { 
2797                            line.classList.contains("line-active") && line.classList.remove("line-active"); 
2798
2799                    }); 
2800                }); 
2801 
2802 
2803                sondwave.addEventListener("click", (event) => { 
2804                    const distanceLeft = (event.clientX - sondwave.getBoundingClientRect().left) / sondwave.offsetWidth; 
2805                    audio.currentTime = audio.duration * distanceLeft; 
2806                }); 
2807 
2808                audioInterface.style.display = ""; 
2809                audioContainer.appendChild(audioInterface); 
2810            }); 
2811 
2812        }); 
2813    </script> 
2814</#macro> 
2815 
2816 
2817<#-- ################################################################################################################## --> 
2818 
2819<#-- ############# Site de Crise - Notícia - Links do conteúdo da notícia ############################################# --> 
2820<#macro renderLinks newsInfo> 
2821    <#if newsInfo.links?size != 0> 
2822    <#--videos "escondidos" que serão unidos a .ptb-news__read-content --> 
2823 
2824        <div class="ptb-news__links-container d-none "> 
2825            <div id="ptb-news__links-identifiers"> 
2826                <#assign separator = ""> 
2827                <#list newsInfo.links as link> 
2828                    ${link.id}; 
2829                    <#assign separator = ";"> 
2830                </#list> 
2831            </div> 
2832            <#list newsInfo.links as link> 
2833                <#assign link_index = link?index> 
2834                <#assign linkUrl = "#"> 
2835                <#assign target = "_blank"> 
2836                <#assign linkClass = ""> 
2837 
2838                <div id="ptb-news__link-container-${link_index}"> 
2839                    <#if link.externalLink?has_content> 
2840                        <#assign linkUrl = link.externalLink> 
2841                        <#assign target = "_blank"> 
2842                        <#assign linkClass = "external-link"> 
2843                    <#elseif link.pageLink?has_content> 
2844                        <#assign linkUrl = link.pageLink> 
2845                        <#assign target = "_self"> 
2846                        <#assign linkClass = "internal-page-link"> 
2847                    <#elseif link.file.mimeType?has_content> 
2848                        <#assign linkUrl = link.file.url> 
2849                        <#assign target = "_blank"> 
2850                        <#assign linkClass = "file-link"> 
2851                    </#if> 
2852 
2853                    <#-- PDF icon --> 
2854                    <#if link.iconType == "Opção78730408" > 
2855                        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" 
2856                             xmlns="http://www.w3.org/2000/svg"> 
2857                            <path d="M3.752 15.974H4.664C4.912 15.974 5.124 15.954 5.3 15.914C5.476 15.874 5.62 15.806 5.732 15.71C5.852 15.606 5.94 15.466 5.996 15.29C6.052 15.114 6.08 14.894 6.08 14.63C6.08 14.11 5.968 13.758 5.744 13.574C5.528 13.39 5.168 13.298 4.664 13.298H3.752V15.974ZM2 20.654V11.894H4.784C5.856 11.894 6.632 12.122 7.112 12.578C7.6 13.026 7.844 13.698 7.844 14.594C7.844 15.474 7.604 16.158 7.124 16.646C6.652 17.134 5.872 17.378 4.784 17.378H3.752V20.654H2Z" 
2858                                  fill="#008542"/> 
2859                            <path d="M10.8402 19.142H11.9442C12.2962 19.142 12.6042 19.102 12.8682 19.022C13.1322 18.942 13.3482 18.798 13.5162 18.59C13.6922 18.374 13.8242 18.082 13.9122 17.714C14.0002 17.338 14.0442 16.854 14.0442 16.262C14.0442 15.678 14.0002 15.202 13.9122 14.834C13.8322 14.458 13.7042 14.166 13.5282 13.958C13.3602 13.75 13.1442 13.606 12.8802 13.526C12.6242 13.446 12.3202 13.406 11.9682 13.406H10.8402V19.142ZM9.16016 20.654V11.894H12.1002C12.7642 11.894 13.3322 11.982 13.8042 12.158C14.2762 12.326 14.6602 12.59 14.9562 12.95C15.2602 13.302 15.4802 13.75 15.6162 14.294C15.7602 14.83 15.8322 15.47 15.8322 16.214C15.8322 17.726 15.5362 18.846 14.9442 19.574C14.3522 20.294 13.3882 20.654 12.0522 20.654H9.16016Z" 
2860                                  fill="#008542"/> 
2861                            <path d="M17.2695 20.654V11.894H22.2735V13.358H18.9735V15.59H21.9015V17.054H18.9735V20.654H17.2695Z" 
2862                                  fill="#008542"/> 
2863                            <path d="M6.08984 8.24516V1.60376C6.08984 1.44364 6.15211 1.29007 6.26294 1.17684C6.37377 1.06361 6.52408 1 6.68082 1H13.7725M13.7725 1L17.9094 5.22634M13.7725 1L13.7725 5.22634H17.9094M17.9094 5.22634V8.24516" 
2864                                  stroke="#008542" stroke-width="1.5" stroke-linecap="round" 
2865                                  stroke-linejoin="round"/> 
2866                        </svg> 
2867 
2868                    <#-- JPG icon --> 
2869                    <#elseif link.iconType == "Opção89889679" > 
2870                        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" 
2871                             xmlns="http://www.w3.org/2000/svg"> 
2872                            <path d="M2 19.1657C2.248 19.1977 2.504 19.2257 2.768 19.2497C3.032 19.2657 3.284 19.2737 3.524 19.2737C3.844 19.2737 4.112 19.2497 4.328 19.2017C4.544 19.1537 4.72 19.0657 4.856 18.9377C4.992 18.8017 5.088 18.6257 5.144 18.4097C5.208 18.1857 5.24 17.8977 5.24 17.5457V11.8937H6.992V17.5457C6.992 18.6817 6.756 19.5057 6.284 20.0177C5.82 20.5297 5.128 20.7857 4.208 20.7857C3.984 20.7857 3.764 20.7737 3.548 20.7497C3.34 20.7257 3.14 20.6937 2.948 20.6537C2.756 20.6137 2.58 20.5697 2.42 20.5217C2.26 20.4737 2.12 20.4257 2 20.3777V19.1657Z" 
2873                                  fill="#008542"/> 
2874                            <path d="M10.4203 15.9737H11.3323C11.5803 15.9737 11.7923 15.9537 11.9683 15.9137C12.1443 15.8737 12.2883 15.8057 12.4003 15.7097C12.5203 15.6057 12.6083 15.4657 12.6643 15.2897C12.7203 15.1137 12.7483 14.8937 12.7483 14.6297C12.7483 14.1097 12.6363 13.7577 12.4123 13.5737C12.1963 13.3897 11.8363 13.2977 11.3323 13.2977H10.4203V15.9737ZM8.66834 20.6537V11.8937H11.4523C12.5243 11.8937 13.3003 12.1217 13.7803 12.5777C14.2683 13.0257 14.5123 13.6977 14.5123 14.5937C14.5123 15.4737 14.2723 16.1577 13.7923 16.6457C13.3203 17.1337 12.5403 17.3777 11.4523 17.3777H10.4203V20.6537H8.66834Z" 
2875                                  fill="#008542"/> 
2876                            <path d="M22.0085 20.2697C21.6405 20.4057 21.2085 20.5257 20.7125 20.6297C20.2245 20.7337 19.7165 20.7857 19.1885 20.7857C18.5005 20.7857 17.9245 20.6897 17.4605 20.4977C17.0045 20.2977 16.6365 20.0097 16.3565 19.6337C16.0845 19.2577 15.8885 18.7977 15.7685 18.2537C15.6485 17.7017 15.5885 17.0777 15.5885 16.3817C15.5885 15.6217 15.6565 14.9537 15.7925 14.3777C15.9285 13.8017 16.1445 13.3217 16.4405 12.9377C16.7365 12.5457 17.1205 12.2537 17.5925 12.0617C18.0645 11.8617 18.6405 11.7617 19.3205 11.7617C19.7845 11.7617 20.2125 11.8017 20.6045 11.8817C21.0045 11.9617 21.3605 12.0577 21.6725 12.1697V13.3937C21.5525 13.3857 21.4125 13.3737 21.2525 13.3577C21.0925 13.3337 20.9205 13.3137 20.7365 13.2977C20.5605 13.2817 20.3765 13.2697 20.1845 13.2617C20.0005 13.2457 19.8205 13.2377 19.6445 13.2377C19.2205 13.2377 18.8605 13.2857 18.5645 13.3817C18.2765 13.4697 18.0405 13.6297 17.8565 13.8617C17.6805 14.0857 17.5485 14.3937 17.4605 14.7857C17.3805 15.1777 17.3405 15.6737 17.3405 16.2737C17.3405 16.8417 17.3765 17.3217 17.4485 17.7137C17.5285 18.0977 17.6485 18.4097 17.8085 18.6497C17.9685 18.8897 18.1765 19.0617 18.4325 19.1657C18.6965 19.2697 19.0125 19.3217 19.3805 19.3217C19.6765 19.3217 20.0245 19.2857 20.4245 19.2137V17.1977H19.1045V15.8897H22.0085V20.2697Z" 
2877                                  fill="#008542"/> 
2878                            <path d="M6.08984 8.24516V1.60376C6.08984 1.44364 6.15211 1.29007 6.26294 1.17684C6.37377 1.06361 6.52408 1 6.68082 1H13.7725M13.7725 1L17.9094 5.22634M13.7725 1L13.7725 5.22634H17.9094M17.9094 5.22634V8.24516" 
2879                                  stroke="#008542" stroke-width="1.5" stroke-linecap="round" 
2880                                  stroke-linejoin="round"/> 
2881                        </svg> 
2882                    <#-- DOC icon --> 
2883                    <#elseif link.iconType == "Opção15480314" > 
2884                        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" 
2885                             xmlns="http://www.w3.org/2000/svg"> 
2886                            <path d="M2.68 19.1417H3.784C4.136 19.1417 4.444 19.1017 4.708 19.0217C4.972 18.9417 5.188 18.7977 5.356 18.5897C5.532 18.3737 5.664 18.0817 5.752 17.7137C5.84 17.3377 5.884 16.8537 5.884 16.2617C5.884 15.6777 5.84 15.2017 5.752 14.8337C5.672 14.4577 5.544 14.1657 5.368 13.9577C5.2 13.7497 4.984 13.6057 4.72 13.5257C4.464 13.4457 4.16 13.4057 3.808 13.4057H2.68V19.1417ZM1 20.6537V11.8937H3.94C4.604 11.8937 5.172 11.9817 5.644 12.1577C6.116 12.3257 6.5 12.5897 6.796 12.9497C7.1 13.3017 7.32 13.7497 7.456 14.2937C7.6 14.8297 7.672 15.4697 7.672 16.2137C7.672 17.7257 7.376 18.8457 6.784 19.5737C6.192 20.2937 5.228 20.6537 3.892 20.6537H1Z" 
2887                                  fill="#008542"/> 
2888                            <path d="M10.7894 20.4977C10.3334 20.3057 9.96138 20.0217 9.67338 19.6457C9.39338 19.2697 9.18937 18.8057 9.06137 18.2537C8.93337 17.6937 8.86938 17.0457 8.86938 16.3097C8.86938 15.5657 8.93337 14.9097 9.06137 14.3417C9.19737 13.7737 9.40938 13.2977 9.69738 12.9137C9.99338 12.5297 10.3694 12.2417 10.8254 12.0497C11.2894 11.8577 11.8494 11.7617 12.5054 11.7617C13.1694 11.7617 13.7294 11.8577 14.1854 12.0497C14.6414 12.2417 15.0094 12.5257 15.2894 12.9017C15.5774 13.2777 15.7854 13.7457 15.9134 14.3057C16.0414 14.8577 16.1054 15.5017 16.1054 16.2377C16.1054 16.9817 16.0374 17.6377 15.9014 18.2057C15.7734 18.7737 15.5614 19.2497 15.2654 19.6337C14.9774 20.0177 14.6014 20.3057 14.1374 20.4977C13.6814 20.6897 13.1254 20.7857 12.4694 20.7857C11.8054 20.7857 11.2454 20.6897 10.7894 20.4977ZM11.0894 18.6737C11.2414 18.9057 11.4334 19.0737 11.6654 19.1777C11.8974 19.2737 12.1694 19.3217 12.4814 19.3217C12.7934 19.3217 13.0654 19.2737 13.2974 19.1777C13.5294 19.0737 13.7214 18.9057 13.8734 18.6737C14.0254 18.4337 14.1374 18.1217 14.2094 17.7377C14.2814 17.3457 14.3174 16.8577 14.3174 16.2737C14.3174 15.6897 14.2814 15.2057 14.2094 14.8217C14.1374 14.4297 14.0254 14.1177 13.8734 13.8857C13.7294 13.6457 13.5414 13.4777 13.3094 13.3817C13.0774 13.2777 12.8054 13.2257 12.4934 13.2257C12.1814 13.2257 11.9094 13.2777 11.6774 13.3817C11.4454 13.4777 11.2534 13.6457 11.1014 13.8857C10.9494 14.1177 10.8374 14.4297 10.7654 14.8217C10.6934 15.2057 10.6574 15.6897 10.6574 16.2737C10.6574 16.8577 10.6934 17.3457 10.7654 17.7377C10.8374 18.1217 10.9454 18.4337 11.0894 18.6737Z" 
2889                                  fill="#008542"/> 
2890                            <path d="M23.1389 20.3897C22.8349 20.5017 22.4989 20.5937 22.1309 20.6657C21.7709 20.7457 21.3629 20.7857 20.9069 20.7857C20.2189 20.7857 19.6429 20.6897 19.1789 20.4977C18.7229 20.3057 18.3549 20.0257 18.0749 19.6577C17.7949 19.2817 17.5949 18.8177 17.4749 18.2657C17.3629 17.7137 17.3069 17.0777 17.3069 16.3577C17.3069 15.5977 17.3709 14.9297 17.4989 14.3537C17.6269 13.7777 17.8309 13.2977 18.1109 12.9137C18.3909 12.5297 18.7589 12.2417 19.2149 12.0497C19.6709 11.8577 20.2229 11.7617 20.8709 11.7617C21.3029 11.7617 21.6989 11.8017 22.0589 11.8817C22.4269 11.9537 22.7629 12.0457 23.0669 12.1577V13.3817C22.8029 13.3497 22.4949 13.3177 22.1429 13.2857C21.7989 13.2537 21.4829 13.2377 21.1949 13.2377C20.8029 13.2377 20.4709 13.2857 20.1989 13.3817C19.9349 13.4697 19.7189 13.6297 19.5509 13.8617C19.3829 14.0857 19.2629 14.3937 19.1909 14.7857C19.1189 15.1697 19.0829 15.6617 19.0829 16.2617C19.0829 16.8617 19.1189 17.3617 19.1909 17.7617C19.2709 18.1537 19.3949 18.4657 19.5629 18.6977C19.7389 18.9217 19.9669 19.0817 20.2469 19.1777C20.5269 19.2657 20.8709 19.3097 21.2789 19.3097C21.5989 19.3097 21.9309 19.2937 22.2749 19.2617C22.6189 19.2217 22.9069 19.1897 23.1389 19.1657V20.3897Z" 
2891                                  fill="#008542"/> 
2892                            <path d="M6.08984 8.24516V1.60376C6.08984 1.44364 6.15211 1.29007 6.26294 1.17684C6.37377 1.06361 6.52408 1 6.68082 1H13.7725M13.7725 1L17.9094 5.22634M13.7725 1L13.7725 5.22634H17.9094M17.9094 5.22634V8.24516" 
2893                                  stroke="#008542" stroke-width="1.5" stroke-linecap="round" 
2894                                  stroke-linejoin="round"/> 
2895                        </svg> 
2896                    <#-- External link icon --> 
2897                    <#elseif link.iconType == "Opção64447681" > 
2898                        <svg width="24" height="24" viewBox="0 0 32 32" fill="none" 
2899                             xmlns="http://www.w3.org/2000/svg"> 
2900                            <path opacity="0.98" 
2901                                  d="M25.5 15.5001V26.5001C25.5 26.7653 25.3946 27.0197 25.2071 27.2072C25.0196 27.3947 24.7652 27.5001 24.5 27.5001L5.5 27.5001C5.23479 27.5001 4.98043 27.3947 4.79289 27.2072C4.60536 27.0197 4.5 26.7653 4.5 26.5001L4.5 7.50009C4.5 7.23488 4.60536 6.98052 4.79289 6.79299C4.98043 6.60545 5.23478 6.50009 5.5 6.50009L17 6.50009M20.4742 4.7124H27.8988M27.8988 4.7124V12.137M27.8988 4.7124L14.5 18.0001" 
2902                                  stroke="#008542" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 
2903                        </svg> 
2904                    <#-- Internal page link icon --> 
2905                    <#elseif link.iconType == "Opção94185057" > 
2906                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="#008542" 
2907                             viewBox="0 0 256 256"> 
2908                            <path d="M137.54,186.36a8,8,0,0,1,0,11.31l-9.94,10A56,56,0,0,1,48.38,128.4L72.5,104.28A56,56,0,0,1,149.31,102a8,8,0,1,1-10.64,12,40,40,0,0,0-54.85,1.63L59.7,139.72a40,40,0,0,0,56.58,56.58l9.94-9.94A8,8,0,0,1,137.54,186.36Zm70.08-138a56.08,56.08,0,0,0-79.22,0l-9.94,9.95a8,8,0,0,0,11.32,11.31l9.94-9.94a40,40,0,0,1,56.58,56.58L172.18,140.4A40,40,0,0,1,117.33,142,8,8,0,1,0,106.69,154a56,56,0,0,0,76.81-2.26l24.12-24.12A56.08,56.08,0,0,0,207.62,48.38Z"> 
2909                            </path> 
2910                        </svg> 
2911                    <#-- Download link icon --> 
2912                    <#elseif link.iconType == "Opção49847593" > 
2913                        <svg width="24" height="24" viewBox="0 0 32 32" fill="none" 
2914                             xmlns="http://www.w3.org/2000/svg"> 
2915                            <path d="M10.75 13.75L16 19M16 19L21.25 13.75M16 19V5M27 19V26C27 26.2652 26.8946 26.5196 26.7071 26.7071C26.5196 26.8946 26.2652 27 26 27H6C5.73478 27 5.48043 26.8946 5.29289 26.7071C5.10536 26.5196 5 26.2652 5 26V19" 
2916                                  stroke="#008542" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 
2917                        </svg> 
2918                    </#if> 
2919 
2920                    <a href="${linkUrl}" class="link ${linkClass}" target="${target}">${link.title}</a> 
2921                </div> 
2922            </#list> 
2923        </div> 
2924 
2925        <script> 
2926            var newsContent_code = document.querySelector(".news-content").innerHTML; 
2927 
2928            var linksIdentifiers = document.querySelector("#ptb-news__links-identifiers").innerHTML.trim().split(";"); 
2929            linksIdentifiers.forEach((linkIdentifier, index) => { 
2930                const linkIdentifierContent = document.querySelector("#ptb-news__link-container-" + index); 
2931                if (linkIdentifierContent) { 
2932                    const tag = "#[" + linkIdentifier.trim() + "]"; 
2933                    const splitContent = newsContent_code.split(tag); 
2934                    newsContent_code = splitContent.join(linkIdentifierContent.innerHTML); 
2935                    //linkIdentifierContent.parentNode.removeChild(linkIdentifierContent); 
2936
2937            }); 
2938 
2939 
2940            var ptb_news__read_content = document.querySelector(".news-content"); 
2941            ptb_news__read_content.innerHTML = newsContent_code; 
2942 
2943        </script> 
2944 
2945        <style> 
2946            .ptb-news__read-news .ptb-news__link a { 
2947                font-family: var(--font-family-base); 
2948                font-style: var(--font-style-normal, normal); 
2949                font-weight: var(--font-weight-bold, 700); 
2950                font-size: var(--font-size-xxs, 16px); 
2951                line-height: var(--line-height-xl, 160%); 
2952 
2953                text-decoration-line: underline; 
2954 
2955                color: var(--color-primary-brand, #008542); 
2956
2957 
2958            body.high-contrast-active .ptb-news__read-news .ptb-news__link a { 
2959                color: #E4F7E8; 
2960
2961 
2962            .ptb-news__read-news .news-content .link { 
2963                font-family: var(--font-family-base); 
2964                font-style: var(--font-style-normal, normal); 
2965                font-weight: var(--font-weight-bold, 700); 
2966                font-size: var(--font-size-xxs, 16px); 
2967                line-height: var(--line-height-xl, 160%); 
2968 
2969                text-decoration-line: underline; 
2970 
2971                color: var(--color-primary-brand, #008542); 
2972
2973 
2974            body.high-contrast-active .ptb-news__read-news .news-content .link { 
2975                color: #E4F7E8; 
2976
2977 
2978            body.high-contrast-active .ptb-news__read-news .news-content svg path { 
2979                stroke: var(--color-neutral-500, #D7D7D7); 
2980                fill: rgba(255, 255, 255, 0.32); 
2981
2982 
2983            .ptb-news__read-news .news-content .ptb-link__wrapper { 
2984                display: flex; 
2985                flex-direction: column; 
2986                gap: 0; 
2987                margin-top: -24px; 
2988
2989 
2990            .ptb-news__read-news .news-content .ptb-link__wrapper svg { 
2991                margin-right: var(--space-sm, 16px); 
2992
2993 
2994            .ptb-news__read-news .news-content .ptb-link__wrapper .first { 
2995                gap: 0 !important; 
2996
2997 
2998            @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
2999                .ptb-news__read-news .news-content .link { 
3000                    font-size: var(--font-size-xxs, 16px); 
3001
3002
3003        </style> 
3004    </#if> 
3005</#macro> 
3006 
3007<#-- ################################################################################################################## --> 
3008<#macro renderCite> 
3009    <div class="ptb-news__cite-container"> 
3010        <div class="ptb-news__cite-container-breakpoint breakpoint"> 
3011            <div class="ptb-news__cite-container-col col-1-12 md-col-1-8 sm-col-1-4"> 
3012                <div class="ptb-news__cite-title"> 
3013                    <#if locale?lower_case == "pt_br"> 
3014                        Notas 
3015                    <#else> 
3016                        Notes 
3017                    </#if> 
3018                </div> 
3019 
3020                <div class="ptb-news__cites-elements"> 
3021                </div> 
3022            </div> 
3023        </div> 
3024    </div> 
3025 
3026    <script> 
3027        function positionCitesText(parentNodeCitesText) { 
3028 
3029            parentNodeCitesText.forEach((parentNodeCiteText) => { 
3030                if (window.innerWidth > 1024) { 
3031                    parentNodeCiteText.style.display = ""; 
3032                    parentNodeCiteText.style.gridColumnStart = "11"; 
3033                    parentNodeCiteText.style.gridColumnEnd = "13"; 
3034                } else { 
3035                    parentNodeCiteText.style.display = "none"; 
3036                    parentNodeCiteText.style.gridColumnStart = ""; 
3037                    parentNodeCiteText.style.gridColumnEnd = ""; 
3038
3039            }); 
3040
3041 
3042        function addCitesTextMobile(citesText) { 
3043            const citesContainer = document.querySelector(".ptb-news__read-news-post .ptb-news__cite-container .ptb-news__cite-container-col .ptb-news__cites-elements"); 
3044 
3045            if (citesContainer.children.length === 0) { 
3046                citesContainer && citesText.forEach((citeText) => { 
3047                    citesContainer.appendChild(citeText.cloneNode(true)); 
3048                }); 
3049
3050
3051 
3052        const citesText = document.querySelectorAll(".news-content cite"); 
3053 
3054        if (citesText.length > 0) { 
3055            const parentNodeCitesText = [...citesText].map((citeText) => citeText.parentNode); 
3056            positionCitesText(parentNodeCitesText); 
3057            addCitesTextMobile(citesText); 
3058        } else { 
3059            const citesContainer = document.querySelector(".ptb-news__cite-container"); 
3060            citesContainer && (citesContainer.style.display = "none"); 
3061
3062 
3063        document.addEventListener('DOMContentLoaded', () => { 
3064 
3065            const citesText = document.querySelectorAll(".news-content cite"); 
3066 
3067            if (citesText.length > 0) { 
3068                const parentNodeCitesText = [...citesText].map((citeText) => citeText.parentNode); 
3069 
3070                positionCitesText(parentNodeCitesText); 
3071                addCitesTextMobile(citesText); 
3072 
3073                window.addEventListener('resize', () => { 
3074                    positionCitesText(parentNodeCitesText) 
3075                }); 
3076            } else { 
3077                const citesContainer = document.querySelector(".ptb-news__cite-container"); 
3078                citesContainer && (citesContainer.style.display = "none"); 
3079
3080        }); 
3081 
3082    </script> 
3083 
3084    <style> 
3085 
3086        .ptb-news__read-news-post cite { 
3087            color: var(--color-neutral-800, #373737); 
3088            font-family: var(--font-family-base); 
3089            font-size: var(--font-size-xxxs, 14px) !important; 
3090            font-style: var(--font-style-normal, normal); 
3091            font-weight: var(--font-weight-regular, 400); 
3092            line-height: var(--line-height-xl, 160%); 
3093
3094 
3095        .ptb-news__read-news-post cite a { 
3096            font-size: var(--font-size-xxxs, 14px) !important; 
3097
3098 
3099        body.high-contrast-active .ptb-news__read-news-post cite { 
3100            color: var(--text-primary-default, var(--color-neutral-100)); 
3101
3102 
3103        .ptb-news__read-news-post .news-content cite, 
3104        .ptb-news__read-news-post .ptb-news__cite-container cite { 
3105            display: block; 
3106            padding-left: var(--space-md); 
3107            border-left: var(--border-width-hairline, 1px) solid var(--color-neutral-500, #D7D7D7); 
3108
3109 
3110        @media screen and (min-width: 1025px) { 
3111            .ptb-news__read-news-post .ptb-news__cite-container { 
3112                display: none; 
3113
3114
3115 
3116        @media screen and (max-width: 1025px) { 
3117            .ptb-news__read-news .ptb-news__cite-container .link { 
3118                text-decoration-line: var(--text-decoration-underline, underline); 
3119                color: #008542; 
3120
3121 
3122            body.high-contrast-active .ptb-news__read-news .ptb-news__cite-container .link { 
3123                color: #E4F7E8; 
3124
3125 
3126            body.high-contrast-active .ptb-news__read-news .ptb-news__cite-container svg path { 
3127                stroke: var(--color-neutral-500, #D7D7D7); 
3128                fill: rgba(255, 255, 255, 0.32); 
3129
3130 
3131            .ptb-news__read-news-post .ptb-news__cite-container { 
3132                display: grid; 
3133                background: var(--background-surface-level-03, #EEE); 
3134
3135 
3136            body.high-contrast-active .ptb-news__read-news-post .ptb-news__cite-container { 
3137                background: var(--background-surface-level-03, #525252); 
3138
3139 
3140            .ptb-news__read-news-post .ptb-news__cite-container .ptb-news__cite-container-col { 
3141                padding: var(--space-xxl) 0; 
3142                display: flex; 
3143                flex-direction: column; 
3144                gap: var(--space-lg, 32px); 
3145
3146 
3147            .ptb-news__read-news-post .ptb-news__cite-container .ptb-news__cite-container-col .ptb-news__cites-elements { 
3148                display: flex; 
3149                flex-direction: column; 
3150                gap: var(--space-lg, 32px); 
3151
3152 
3153            .ptb-news__read-news-post .ptb-news__cite-container .ptb-news__cite-container-col .ptb-news__cite-title { 
3154                color: var(--color-neutral-800, #373737); 
3155                font-size: var(--font-size-sm, 20px); 
3156                font-style: var(--font-style-normal, normal); 
3157                font-weight: var(--font-weight-bold, 700); 
3158                line-height: var(--line-height-xl, 160%); 
3159
3160 
3161            body.high-contrast-active .ptb-news__read-news-post .ptb-news__cite-container .ptb-news__cite-container-col .ptb-news__cite-title { 
3162                color: var(--text-primary-default, var(--color-neutral-100)); 
3163
3164
3165    </style> 
3166 
3167</#macro> 
3168 
3169<#-- ############# Site de Crise - Notícia - Galeria de imagens ####################################################### --> 
3170<#macro renderGallery newsInfo> 
3171    <#if newsInfo.galleryItems?size == 0> 
3172        <#return /> 
3173    </#if> 
3174 
3175    <div class="breakpoint"> 
3176        <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
3177            <div class="gallery"> 
3178 
3179                <div class="title-container"> 
3180                    <svg class="icon" viewBox="0 0 26 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 
3181                        <path d="M23 22H3C2.46957 22 1.96086 21.7893 1.58579 21.4142C1.21071 21.0391 1 20.5304 1 20V6C1 5.46957 1.21071 4.96086 1.58579 4.58579C1.96086 4.21071 2.46957 4 3 4H7L9 1H17L19 4H23C23.5304 4 24.0391 4.21071 24.4142 4.58579C24.7893 4.96086 25 5.46957 25 6V20C25 20.5304 24.7893 21.0391 24.4142 21.4142C24.0391 21.7893 23.5304 22 23 22Z" 
3182                              stroke="#525252" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 
3183                        <path d="M13 17C15.4853 17 17.5 14.9853 17.5 12.5C17.5 10.0147 15.4853 8 13 8C10.5147 8 8.5 10.0147 8.5 12.5C8.5 14.9853 10.5147 17 13 17Z" 
3184                              stroke="#525252" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 
3185                    </svg> 
3186                    <p class="title"> 
3187                        <#if locale == "pt_BR"> Fotos <#else > Photos </#if> 
3188                    </p> 
3189                </div> 
3190 
3191 
3192                <div class="image-container"> 
3193                    <#assign itensNum = 1 /> 
3194                    <#list newsInfo.galleryItems as gItem> 
3195                        <#assign rancomCssClass = "fragment_88494_" + gItem?index /> 
3196                        <div class="fragment_88494 ${rancomCssClass}"> 
3197                            <div class="modal-image-container"> 
3198                                <span class="click-image news-gallery-image-thumb"></span> 
3199 
3200                                <div class="image-player-container"> 
3201                                    <span class="close-image news-gallery-close-modal">X</span> 
3202                                    <div class="image-player-session"> 
3203                                        <#assign largeImgUrl = ""/> 
3204                                        <#assign largeImgAlt = ""/> 
3205                                        <#if gItem.originalFile["contentUrl"]?? > 
3206                                            <#assign largeImgUrl = themeDisplay.getPortalURL() + "/documents/" + groupId + "/" +  gItem.originalFile.externalReferenceCode + "?t=" + .now?string["HHmmssSSS"] /> 
3207                                            <#assign largeImgAlt = gItem.originalFile["description"]/> 
3208                                        </#if> 
3209 
3210                                        <#assign thumbnailImageUrl = ""/> 
3211                                        <#assign thumbnailImageAlt = ""/> 
3212                                        <#if gItem.thumbnailImage?? && gItem.thumbnailImage?has_content && gItem.thumbnailImage["contentUrl"]?? && gItem.thumbnailImage["contentUrl"]??> 
3213                                            <#assign mediaWidth = 300 /> 
3214                                            <#list gItem.thumbnailImage.adaptedImages?filter(f -> f.width == mediaWidth)  as adaptedImage> 
3215                                                <#assign thumbnailImageUrl = themeDisplay.getPortalURL() + adaptedImage.contentUrl /> 
3216                                            </#list> 
3217                                            <#assign thumbnailImageAlt = gItem.thumbnailImage.description /> 
3218                                        </#if> 
3219 
3220 
3221                                        <#assign carrouselImgUrl = ""/> 
3222                                        <#assign carrouselImgAlt = ""/> 
3223                                        <#if gItem.originalFile["contentUrl"]??> 
3224                                            <#assign carrouselImgUrl = gItem.originalFile["contentUrl"] /> 
3225                                            <#assign carrouselImgAlt = gItem.originalFile.description /> 
3226                                        </#if> 
3227 
3228                                        <#if !thumbnailImageUrl?? || !thumbnailImageUrl?has_content> 
3229                                            <#assign mediaWidth = 300 /> 
3230                                            <#if gItem.originalFile["adaptedImages"]??> 
3231                                                <#list gItem.originalFile.adaptedImages?filter(f -> f.width == mediaWidth)  as adaptedImage> 
3232                                                    <#assign thumbnailImageUrl = themeDisplay.getPortalURL() + adaptedImage.contentUrl /> 
3233                                                </#list> 
3234                                            </#if> 
3235                                            <#if !thumbnailImageUrl?has_content> 
3236                                                <#assign thumbnailImageUrl = largeImgUrl/> 
3237                                            </#if> 
3238                                            <#assign thumbnailImageAlt = largeImgAlt/> 
3239                                        </#if> 
3240 
3241 
3242                                        <img class="thumbnail" src="${thumbnailImageUrl}" alt="${thumbnailImageAlt}"/> 
3243 
3244 
3245                                        <#assign urlFirst = "" > 
3246 
3247                                        <#if carrouselImgUrl?? || carrouselImgUrl?has_content> 
3248 
3249                                            <#assign urlFirst = "background-image: url('${carrouselImgUrl}');" > 
3250                                        </#if> 
3251 
3252 
3253                                        <span class="background-image" style="${urlFirst}"> 
3254 
3255                                            </span> 
3256 
3257                                        <div class="large" style="display:none;"> 
3258                                            <img class="carousel" src="${carrouselImgUrl}" alt="${carrouselImgAlt}"/> 
3259                                        </div> 
3260 
3261                                        <div class="gallery-modal-footer"> 
3262                                            <div class="carousel-info"> 
3263                                                <p class="title-image paragraph-sm-regular"> 
3264                                                    <#if locale == "pt_BR"> Foto: <#else > Picture: </#if>${itensNum} 
3265                                                    /${newsInfo.galleryItems?size} 
3266                                                </p> 
3267                                                <div class="left-arrow news-gallery-previus-img-btn"> 
3268                                                    <svg width="32" height="32" viewBox="0 0 32 32" fill="none" 
3269                                                         xmlns="http://www.w3.org/2000/svg"> 
3270                                                        <path d="M0 16C0 7.16344 7.16344 0 16 0C24.8366 0 32 7.16344 32 16C32 24.8366 24.8366 32 16 32C7.16344 32 0 24.8366 0 16Z" 
3271                                                              fill="#008542"/> 
3272                                                        <path d="M21.5 16H10.5M10.5 16L15 11.5M10.5 16L15 20.5" 
3273                                                              stroke="white" stroke-linecap="round" 
3274                                                              stroke-linejoin="round"/> 
3275                                                    </svg> 
3276                                                </div> 
3277                                                <div class="right-arrow news-gallery-next-img-btn"> 
3278                                                    <svg width="32" height="32" viewBox="0 0 32 32" fill="none" 
3279                                                         xmlns="http://www.w3.org/2000/svg"> 
3280                                                        <path d="M0 16C0 7.16344 7.16344 0 16 0C24.8366 0 32 7.16344 32 16C32 24.8366 24.8366 32 16 32C7.16344 32 0 24.8366 0 16Z" 
3281                                                              fill="#008542"/> 
3282                                                        <path d="M10.5 16H21.5M21.5 16L17 11.5M21.5 16L17 20.5" 
3283                                                              stroke="white" stroke-linecap="round" 
3284                                                              stroke-linejoin="round"/> 
3285                                                    </svg> 
3286                                                </div> 
3287                                            </div> 
3288                                            <div class="text-container"> 
3289                                                <p class="title-image h5">${gItem.cardTitle}</p> 
3290                                                <div class="image-info"> 
3291                                                    <p class="date-info paragraph-sm-regular">${formatDate(gItem.createDate)}</p> 
3292                                                    <p class="autor-info paragraph-sm-regular"><#if locale == "pt_BR"> Por: <#else > By: </#if> ${gItem.author}</p> 
3293                                                </div> 
3294                                                <div class="download-info"> 
3295                                                    <div class="download-large-image"> 
3296                                                        <div class="download-share-container"> 
3297                                                            <a class="download button donwload-button news-gallery-image-item-download" 
3298                                                               href="${largeImgUrl}?download=true"> 
3299 
3300                                                                <svg width="20" height="20" viewBox="0 0 20 20" 
3301                                                                     fill="none" xmlns="http://www.w3.org/2000/svg"> 
3302                                                                    <path d="M6.71875 8.59375L10 11.875M10 11.875L13.2812 8.59375M10 11.875V3.125M16.875 11.875V16.25C16.875 16.4158 16.8092 16.5747 16.6919 16.6919C16.5747 16.8092 16.4158 16.875 16.25 16.875H3.75C3.58424 16.875 3.42527 16.8092 3.30806 16.6919C3.19085 16.5747 3.125 16.4158 3.125 16.25V11.875" 
3303                                                                          stroke="white" stroke-linecap="round" 
3304                                                                          stroke-linejoin="round"/> 
3305                                                                </svg> 
3306                                                                <#if locale == "pt_BR"> Baixar <#else > Download </#if> 
3307 
3308                                                            </a> 
3309                                                            <div class="download-info-message"> 
3310                                                                <svg width="16" height="16" viewBox="0 0 16 16" 
3311                                                                     fill="none" xmlns="http://www.w3.org/2000/svg"> 
3312                                                                    <path d="M8 6.5V9" stroke="#FFEEB3" 
3313                                                                          stroke-linecap="round" 
3314                                                                          stroke-linejoin="round"/> 
3315                                                                    <path d="M7.1374 2.49998L1.6374 12C1.54978 12.1517 1.50357 12.3239 1.50342 12.4991C1.50326 12.6743 1.54916 12.8465 1.63651 12.9985C1.72386 13.1504 1.8496 13.2767 2.00113 13.3647C2.15266 13.4527 2.32466 13.4994 2.4999 13.5H13.4999C13.6751 13.4994 13.8471 13.4527 13.9987 13.3647C14.1502 13.2767 14.2759 13.1504 14.3633 12.9985C14.4506 12.8465 14.4965 12.6743 14.4964 12.4991C14.4962 12.3239 14.45 12.1517 14.3624 12L8.8624 2.49998C8.77543 2.34802 8.64987 2.22173 8.49841 2.1339C8.34695 2.04607 8.17498 1.99982 7.9999 1.99982C7.82481 1.99982 7.65284 2.04607 7.50138 2.1339C7.34992 2.22173 7.22436 2.34802 7.1374 2.49998V2.49998Z" 
3316                                                                          stroke="#FFEEB3" stroke-linecap="round" 
3317                                                                          stroke-linejoin="round"/> 
3318                                                                    <path d="M8 12C8.41421 12 8.75 11.6642 8.75 11.25C8.75 10.8358 8.41421 10.5 8 10.5C7.58579 10.5 7.25 10.8358 7.25 11.25C7.25 11.6642 7.58579 12 8 12Z" 
3319                                                                          fill="#FFEEB3"/> 
3320                                                                </svg> 
3321                                                                <p class="paragraph-micro-regular">O uso deste material 
3322                                                                    é autorizado apenas para fins editoriais.</p> 
3323                                                            </div> 
3324                                                        </div> 
3325                                                    </div> 
3326 
3327                                                    <div class="social-media-container"> 
3328 
3329                                                        <#assign emailMsg = "Veja o conteúdo do post no link "> 
3330                                                        <#if locale == "en_US"> 
3331                                                            <#assign emailMsg = "See the content of the post in the link "> 
3332                                                        </#if> 
3333 
3334                                                        <a class="news-gallery-share-news-email" href="mailto:?subject=${newsInfo.mainHeadlineOfTheNews}&amp;body=${emailMsg}${themeDisplay.getPortalURL() + largeImgUrl}" 
3335                                                           target="_blank"> 
3336                                                            <svg class="email" width="37" height="36" 
3337                                                                 viewBox="0 0 37 36" fill="none" 
3338                                                                 xmlns="http://www.w3.org/2000/svg"> 
3339                                                                <circle cx="18.5" cy="18" r="17.5" fill="white" 
3340                                                                        stroke="#E1E1E1"/> 
3341                                                                <path d="M24.9231 12H11.0769C10.9239 12 10.7772 12.0579 10.669 12.1611C10.5608 12.2642 10.5 12.4041 10.5 12.55V21.9C10.5 22.1917 10.6216 22.4715 10.838 22.6778C11.0543 22.8841 11.3478 23 11.6538 23H24.3462C24.6522 23 24.9457 22.8841 25.162 22.6778C25.3784 22.4715 25.5 22.1917 25.5 21.9V12.55C25.5 12.4041 25.4392 12.2642 25.331 12.1611C25.2228 12.0579 25.0761 12 24.9231 12ZM24.3462 21.9H11.6538V13.8012L17.6106 19.0056C17.7169 19.0984 17.8559 19.1498 18 19.1498C18.1441 19.1498 18.2831 19.0984 18.3894 19.0056L24.3462 13.8012V21.9Z" 
3342                                                                      fill="#008542"/> 
3343                                                            </svg> 
3344                                                            <span style="display: none">send e-mail</span> 
3345                                                        </a> 
3346 
3347                                                        <a class="news-gallery-share-news-facebook" href="https://www.facebook.com/sharer/sharer.php?u=${themeDisplay.getPortalURL() + largeImgUrl}" 
3348                                                           target="_blank"> 
3349                                                            <svg class="facebook" width="37" height="36" 
3350                                                                 viewBox="0 0 37 36" fill="none" 
3351                                                                 xmlns="http://www.w3.org/2000/svg"> 
3352                                                                <circle cx="18.5" cy="18" r="17.5" fill="white" 
3353                                                                        stroke="#E1E1E1"/> 
3354                                                                <path d="M17.5417 24H20.0341V18.1855H21.9697L22.2879 15.875H20.0341V14.2754C20.0341 13.9199 20.0871 13.6406 20.2462 13.4629C20.4053 13.2598 20.75 13.1582 21.2273 13.1582H22.5V11.1016C22.0227 11.0508 21.3864 11 20.6439 11C19.6894 11 18.947 11.2793 18.3902 11.8125C17.8068 12.3457 17.5417 13.082 17.5417 14.0469V15.875H15.5V18.1855H17.5417V24Z" 
3355                                                                      fill="#008542"/> 
3356                                                            </svg> 
3357                                                        </a> 
3358 
3359 
3360                                                        <a class="news-gallery-share-news-twitter" href="https://twitter.com/intent/tweet?url=${themeDisplay.getPortalURL() + largeImgUrl}" 
3361                                                           target="_blank"> 
3362                                                            <svg class="twitter" width="37" height="36" 
3363                                                                 viewBox="0 0 37 36" fill="none" 
3364                                                                 xmlns="http://www.w3.org/2000/svg"> 
3365                                                                <circle cx="18.5" cy="18" r="17.5" fill="white" 
3366                                                                        stroke="#E1E1E1"/> 
3367                                                                <path d="M23.1771 14.7301C23.6859 14.3325 24.1438 13.8554 24.5 13.2988C24.0421 13.5108 23.5078 13.6699 22.9736 13.7229C23.5333 13.3783 23.9403 12.8482 24.1438 12.1855C23.635 12.5036 23.0499 12.7422 22.4648 12.8747C21.956 12.3181 21.2691 12 20.5059 12C19.0303 12 17.8346 13.2458 17.8346 14.7831C17.8346 14.9952 17.8601 15.2072 17.911 15.4193C15.6977 15.2867 13.7133 14.1735 12.3904 12.5036C12.1614 12.9012 12.0342 13.3783 12.0342 13.9084C12.0342 14.8627 12.4922 15.7108 13.2299 16.2145C12.7975 16.188 12.365 16.0819 12.0088 15.8699V15.8964C12.0088 17.2482 12.9247 18.3614 14.1458 18.6265C13.9423 18.6795 13.6879 18.7325 13.4589 18.7325C13.2808 18.7325 13.1282 18.706 12.9501 18.6795C13.2808 19.7928 14.273 20.588 15.4432 20.6145C14.5274 21.3566 13.3826 21.8072 12.136 21.8072C11.907 21.8072 11.7035 21.7807 11.5 21.7542C12.6703 22.5494 14.0695 23 15.5959 23C20.5059 23 23.1771 18.7855 23.1771 15.1012C23.1771 14.9687 23.1771 14.8627 23.1771 14.7301Z" 
3368                                                                      fill="#008542"/> 
3369                                                            </svg> 
3370                                                        </a> 
3371 
3372                                                        <a class="news-gallery-share-news-whatsapp" href="https://api.whatsapp.com/send?text=${themeDisplay.getPortalURL() + largeImgUrl}" 
3373                                                           data-action="share/whatsapp/share" 
3374                                                           target="_blank"> 
3375                                                            <svg class="whatsapp" width="37" height="36" 
3376                                                                 viewBox="0 0 37 36" fill="none" 
3377                                                                 xmlns="http://www.w3.org/2000/svg"> 
3378                                                                <circle cx="18.5" cy="18" r="17.5" fill="white" 
3379                                                                        stroke="#E1E1E1"/> 
3380                                                                <path d="M12.5482 21.3241C11.6166 19.7525 11.2908 17.8949 11.6318 16.1C11.9729 14.3052 12.9573 12.6965 14.4003 11.5761C15.8434 10.4556 17.6457 9.90042 19.4691 10.0147C21.2925 10.129 23.0114 10.9049 24.3033 12.1967C25.5951 13.4886 26.371 15.2075 26.4853 17.0309C26.5996 18.8543 26.0444 20.6566 24.9239 22.0997C23.8035 23.5427 22.1948 24.5271 20.4 24.8682C18.6051 25.2092 16.7475 24.8834 15.1759 23.9518L12.5795 24.687C12.4731 24.7181 12.3603 24.72 12.2529 24.6925C12.1455 24.6651 12.0475 24.6092 11.9692 24.5308C11.8908 24.4525 11.8349 24.3545 11.8075 24.2471C11.78 24.1397 11.7819 24.0269 11.813 23.9205L12.5482 21.3241Z" 
3381                                                                      fill="#008542"/> 
3382                                                                <path d="M20.6917 21C20.0094 21.0017 19.3335 20.8686 18.7029 20.6083C18.0722 20.348 17.4992 19.9656 17.0168 19.4832C16.5344 19.0008 16.152 18.4278 15.8917 17.7971C15.6314 17.1665 15.4983 16.4906 15.5 15.8083C15.5017 15.3281 15.6937 14.8682 16.0338 14.5293C16.374 14.1903 16.8346 14 17.3148 14C17.394 13.9994 17.472 14.0201 17.5404 14.06C17.6089 14.1 17.6653 14.1576 17.7037 14.2269L18.462 15.5491C18.5071 15.6295 18.5303 15.7203 18.5291 15.8124C18.528 15.9046 18.5026 15.9948 18.4556 16.0741L17.8463 17.0917C18.1584 17.7859 18.7141 18.3416 19.4083 18.6537L20.4259 18.0444C20.5052 17.9974 20.5954 17.972 20.6876 17.9709C20.7797 17.9697 20.8705 17.9929 20.9509 18.038L22.2731 18.7963C22.3424 18.8347 22.4 18.8911 22.44 18.9596C22.4799 19.028 22.5006 19.106 22.5 19.1852C22.4983 19.6649 22.3074 20.1245 21.9689 20.4643C21.6303 20.8041 21.1713 20.9966 20.6917 21Z" 
3383                                                                      fill="white"/> 
3384                                                            </svg> 
3385                                                            <span style="display: none">Share to WhatsApp </span> 
3386                                                        </a> 
3387 
3388                                                    </div> 
3389                                                </div> 
3390 
3391                                            </div> 
3392                                        </div> 
3393                                    </div> 
3394                                </div> 
3395                            </div> 
3396                        </div> 
3397 
3398                        <script> 
3399                            AUI().ready(function () { 
3400                                const fragmentElement = document.querySelector(".${rancomCssClass}"); 
3401                                const getImageClick = fragmentElement.querySelector('.click-image'); 
3402                                const imageContainer = fragmentElement.querySelector('.modal-image-container'); 
3403                                const imagePlayerContainer = fragmentElement.querySelector('.image-player-container'); 
3404 
3405                                const image = imagePlayerContainer.querySelector('img'); 
3406                                const closeImage = imagePlayerContainer.querySelector('.close-image'); 
3407                                const body = document.querySelector('body'); 
3408                                const thumbnailImage = imagePlayerContainer.querySelector(".thumbnail"); 
3409                                const largeImage = imagePlayerContainer.querySelector(".large"); 
3410 
3411                                const stopImage = () => { 
3412                                    fragmentElement.classList.toggle('active'); 
3413                                    getImageClick.classList.toggle('image-playing'); 
3414                                    imagePlayerContainer.classList.toggle('image-playing'); 
3415                                    imageContainer.classList.toggle('image-playing'); 
3416                                    thumbnailImage.classList.toggle('hide'); 
3417                                    largeImage.style = "display: none"; 
3418                                    closeImage.classList.toggle('image-active'); 
3419                                    body.style.overflow = 'initial'; 
3420
3421 
3422                                const playImage = () => { 
3423                                    fragmentElement.classList.toggle('active'); 
3424                                    getImageClick.classList.toggle('image-playing'); 
3425                                    imagePlayerContainer.classList.toggle('image-playing'); 
3426                                    imageContainer.classList.toggle('image-playing'); 
3427                                    closeImage.classList.toggle('image-active') 
3428                                    thumbnailImage.classList.toggle('hide'); 
3429                                    largeImage.style = "display: flex"; 
3430                                    body.style.overflow = 'hidden'; 
3431
3432 
3433                                getImageClick.addEventListener('click', () => { 
3434                                    if (document.body.classList.contains('has-edit-mode-menu')) { 
3435                                        return; 
3436
3437 
3438                                    if (imagePlayerContainer.classList.contains('image-playing')) { 
3439                                        stopImage(); 
3440                                    } else { 
3441                                        playImage(); 
3442
3443                                }) 
3444 
3445                                closeImage.addEventListener('click', () => { 
3446                                    if (imagePlayerContainer.classList.contains('image-playing')) { 
3447                                        stopImage(); 
3448
3449                                }) 
3450                            }); 
3451                        </script> 
3452 
3453                        <#assign itensNum = itensNum + 1 /> 
3454 
3455                    </#list> 
3456 
3457                </div> 
3458 
3459                <script> 
3460                    AUI().ready(function () { 
3461                        const imageContainer = document.querySelectorAll('.image-container .modal-image-container'); 
3462                        const closeImage = document.querySelectorAll('.image-container .modal-image-container .close-image'); 
3463                        const clickContainer = document.querySelectorAll('.image-container .modal-image-container .click-image'); 
3464                        let curItem = 0; 
3465 
3466 
3467                        if (imageContainer.length > 0) { 
3468                            const allArrowsLeft = document.querySelectorAll('.fragment_88494 .modal-image-container .image-player-container .carousel-info .left-arrow'); 
3469                            const allArrowsRight = document.querySelectorAll('.fragment_88494 .modal-image-container .image-player-container .carousel-info .right-arrow'); 
3470 
3471 
3472                            allArrowsLeft.forEach((item, index) => { 
3473                                item.addEventListener('click', () => { 
3474                                    if (index - 1 >= 0) { 
3475                                        curItem = index - 1 
3476                                        closeImage[index].click(); 
3477                                        clickContainer[curItem].click(); 
3478
3479 
3480                                }) 
3481                            }); 
3482 
3483                            allArrowsRight.forEach((item, index) => { 
3484                                item.addEventListener('click', () => { 
3485                                    if (index + 1 <= (imageContainer.length - 1)) { 
3486                                        curItem = index + 1 
3487                                        closeImage[index].click(); 
3488                                        clickContainer[curItem].click(); 
3489
3490 
3491                                }) 
3492 
3493 
3494                            }); 
3495 
3496 
3497
3498                    }); 
3499                </script> 
3500 
3501            </div> 
3502        </div> 
3503    </div> 
3504 
3505    <style> 
3506        .ptb-news__read-news .gallery * { 
3507            margin: 0; 
3508            padding: 0; 
3509
3510 
3511        .ptb-news__read-news .gallery { 
3512            display: flex; 
3513            gap: var(--space-xl, 40px); 
3514            flex-direction: column; 
3515
3516 
3517        .ptb-news__read-news .gallery .title-container { 
3518            display: flex; 
3519            align-items: center; 
3520            gap: var(--space-sm, 16px); 
3521
3522 
3523        .ptb-news__read-news .gallery .title-container svg { 
3524            width: 24px; 
3525            height: 21px; 
3526
3527 
3528        .ptb-news__read-news .gallery .title-container .title { 
3529            color: var(--color-neutral-800, #373737); 
3530            font-family: var(--font-family-base); 
3531            font-size: var(--font-size-lg); 
3532            font-style: var(--font-style-normal); 
3533            font-weight: var(--font-weight-bold); 
3534            line-height: var(--line-height-md); /* 31.68px */ 
3535
3536 
3537        .ptb-news__read-news .gallery .image-container { 
3538            display: flex; 
3539            gap: var(--space-sm, 16px); 
3540            flex-wrap: wrap; 
3541
3542 
3543        .ptb-news__read-news .gallery .image-container .fragment_88494 { 
3544            width: 274px; 
3545            height: 152px; 
3546            border-radius: var(--border-radius-md, 8px); 
3547
3548 
3549        .ptb-news__read-news .gallery .large-image-download { 
3550            display: none; 
3551
3552 
3553        .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session .download-share-container { 
3554            display: flex; 
3555            justify-content: space-between; 
3556            gap: 12px; 
3557
3558 
3559 
3560        .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session .download-share-container .social-media-container { 
3561            display: flex; 
3562            gap: 8px; 
3563
3564 
3565        /* Gallery */ 
3566 
3567        .fragment_88494 { 
3568            width: inherit; 
3569            height: inherit; 
3570            max-height: calc(100vw / 2); 
3571            padding: 0; 
3572            margin: 0; 
3573            overflow: hidden; 
3574
3575 
3576        .fragment_88494 * { 
3577            box-sizing: border-box; 
3578            margin: 0; 
3579            padding: 0; 
3580
3581 
3582        .fragment_88494 .modal-image-container { 
3583            width: 100%; 
3584            height: inherit; 
3585            display: flex; 
3586            justify-content: center; 
3587            position: relative; 
3588            cursor: initial; 
3589
3590 
3591        .fragment_88494 .modal-image-container .click-image { 
3592            cursor: pointer; 
3593
3594 
3595        .fragment_88494 .modal-image-container.image-playing { 
3596            position: fixed; 
3597            top: 0; 
3598            left: 0; 
3599            width: 100vw !important; 
3600            height: 100vh !important; 
3601            z-index: 9999 !important; 
3602            background-color: rgba(0, 0, 0, 0.75); 
3603            max-height: 100vh; 
3604
3605 
3606        .page-editor .fragment_88494 .modal-image-container { 
3607            z-index: 0; 
3608
3609 
3610        .fragment_88494 .modal-image-container .click-image { 
3611            height: 100%; 
3612            width: 100%; 
3613            position: absolute; 
3614            z-index: 3; 
3615
3616 
3617        .fragment_88494 .modal-image-container .image-player-container { 
3618            width: 100%; 
3619            height: 100%; 
3620
3621 
3622 
3623        .fragment_88494 .modal-image-container .image-player-container.image-playing { 
3624            position: relative; 
3625            width: 90vw !important; 
3626            height: 90vh !important; 
3627            z-index: 9999 !important; 
3628            border-radius: var(--border-radius-card); 
3629            margin: auto; 
3630            max-width: 1440px; 
3631
3632 
3633        .fragment_88494 .modal-image-container .image-player-container .close-image { 
3634            display: none; 
3635            position: absolute; 
3636            font-size: var(--font-size-micro); 
3637            color: var(--color-primary-medium); 
3638            width: 20px; 
3639            height: 20px; 
3640            top: -6px; 
3641            right: -10px; 
3642            z-index: 99999; 
3643            background: var(--color-neutral-100); 
3644            text-align: center; 
3645            border-radius: 50%; 
3646            border: 1px solid var(--color-neutral-400); 
3647
3648 
3649        .fragment_88494 .modal-image-container .image-player-container .close-image.image-active { 
3650            display: block; 
3651
3652 
3653        .fragment_88494 .modal-image-container .image-player-container .image-player-session { 
3654            width: 100%; 
3655            height: 100%; 
3656
3657 
3658        .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session { 
3659            width: 90vw !important; 
3660            height: 65vh !important; 
3661            z-index: 9999 !important; 
3662            border-radius: var(--border-radius-card) var(--border-radius-card) 0 0; 
3663            overflow: hidden; 
3664            max-width: 1440px; 
3665
3666 
3667        .fragment_88494 .modal-image-container .image-player-container.image-playing .background-image { 
3668            display: flex; 
3669            width: 100% !important; 
3670            height: 100% !important; 
3671            margin-left: 0 !important; 
3672            max-height: 100vh; 
3673            filter: blur(8px); 
3674            overflow: hidden; 
3675            background-repeat: repeat; 
3676            background-size: 50% 700px; 
3677
3678 
3679        .fragment_88494 .modal-image-container .image-player-container .image-player-session img { 
3680            width: 120%; 
3681            height: 120%; 
3682            margin-left: -12%; 
3683            max-height: calc(100vw / 2); 
3684            object-fit: cover; 
3685
3686 
3687        .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session img { 
3688            width: 100% !important; 
3689            height: 65vh !important; 
3690            margin-left: 0 !important; 
3691            max-height: 100vh; 
3692            object-fit: contain; 
3693            position: absolute; 
3694            top: 0; 
3695            left: 0; 
3696            background: transparent; 
3697
3698 
3699        .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer { 
3700            display: flex; 
3701            flex-direction: row-reverse; 
3702            justify-content: space-between; 
3703            align-items: flex-start; 
3704            background-color: #1E1E1E; 
3705            /*max-height: 35%;*/ 
3706            padding: 8px; 
3707            border-radius: 0 0 var(--border-radius-card) var(--border-radius-card); 
3708            color: var(--color-neutral-100); 
3709            gap: 32px; 
3710            min-height: 128px; 
3711            z-index: 9999 !important; 
3712            position: absolute; 
3713            width: 90vw !important; 
3714            max-width: 1440px; 
3715
3716 
3717        .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container { 
3718            display: flex; 
3719            flex-direction: column; 
3720            gap: 8px; 
3721
3722 
3723        .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer .social-media-container { 
3724            position: absolute; 
3725            right: 5px; 
3726            bottom: 20px; 
3727            display: flex; 
3728            gap: 3px; 
3729
3730 
3731        .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer .social-media-container a { 
3732            display: block; 
3733            height: fit-content; 
3734
3735 
3736        .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .image-info { 
3737            display: flex; 
3738            gap: 24px; 
3739            color: var(--color-neutral-500); 
3740
3741 
3742 
3743        .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info { 
3744            display: flex; 
3745            gap: 16px; 
3746            margin-top: 15px; 
3747
3748 
3749        .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info .donwload-button { 
3750            display: flex; 
3751            justify-content: space-around; 
3752            align-items: center; 
3753            background-color: var(--color-primary-medium); 
3754            width: 100px; 
3755            height: 40px; 
3756            padding: 0px 16px 0px 16px; 
3757            border-radius: 100px; 
3758            gap: 8px; 
3759            color: var(--color-neutral-100); 
3760            text-decoration: none; 
3761
3762 
3763        .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info .donwload-button svg { 
3764            pointer-events: none; 
3765
3766 
3767        .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info svg { 
3768            flex-shrink: 0; 
3769            pointer-events: none; 
3770
3771 
3772        .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info-message { 
3773            display: flex; 
3774            align-items: center; 
3775            color: #FFEEB3; 
3776            gap: 8px; 
3777
3778 
3779        .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info { 
3780            display: flex; 
3781            justify-content: center; 
3782            gap: 8px; 
3783            padding: 8px; 
3784
3785 
3786        .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info .left-arrow, 
3787        .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info .right-arrow { 
3788            cursor: pointer; 
3789
3790 
3791        .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info .left-arrow svg, 
3792        .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info .right-arrow svg { 
3793            pointer-events: none; 
3794
3795 
3796        .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info .title-image { 
3797            display: flex; 
3798            justify-content: center; 
3799            align-items: center; 
3800            height: 32px; 
3801            color: var(--color-neutral-500); 
3802
3803 
3804 
3805        @media (max-width: 1040px) { 
3806 
3807            .fragment_88494 .modal-image-container .image-player-container.image-playing .background-image { 
3808                background-size: 100% 100%; 
3809
3810 
3811
3812 
3813 
3814        @media (max-width: 767px) { 
3815 
3816            .fragment_88494 .modal-image-container .image-player-container.image-playing { 
3817                margin-top: 5%; 
3818
3819 
3820            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session { 
3821                height: 50vh !important; 
3822                min-height: 234px; 
3823
3824 
3825            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session img { 
3826                height: 50vh !important; 
3827                min-height: 234px; 
3828
3829 
3830            .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info { 
3831                align-items: center; 
3832                justify-content: flex-start; 
3833                margin-top: 12px; 
3834                width: 100%; 
3835
3836 
3837            .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer { 
3838                /*height: 40%;*/ 
3839                min-height: 280px; 
3840                flex-direction: column; 
3841                justify-content: flex-start; 
3842                align-items: center; 
3843                width: 100%; 
3844                flex-wrap: nowrap; 
3845
3846 
3847 
3848            .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .image-info { 
3849                flex-direction: column; 
3850                gap: 8px; 
3851
3852 
3853            .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info { 
3854                flex-direction: column; 
3855                justify-content: center; 
3856                align-items: center; 
3857                margin-top: 5px; 
3858
3859 
3860            .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info .donwload-button { 
3861                justify-content: center; 
3862                width: 100%; 
3863
3864 
3865            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session .download-share-container { 
3866                flex-direction: column; 
3867
3868 
3869            .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer .social-media-container { 
3870                top: 25px; 
3871
3872 
3873
3874 
3875 
3876        @media (max-width: 540px) { 
3877 
3878            .fragment_88494 .modal-image-container .image-player-container.image-playing { 
3879                height: 40vh !important; 
3880                margin-top: 15%; 
3881
3882 
3883            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session { 
3884                height: 40vh !important; 
3885                min-height: 234px; 
3886
3887 
3888            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session img { 
3889                height: 40vh !important; 
3890                min-height: 234px; 
3891
3892 
3893            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session .download-share-container { 
3894                gap: 6px; 
3895
3896 
3897            .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer { 
3898                gap: 18px; 
3899
3900 
3901            .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info { 
3902                margin-top: 2px; 
3903
3904 
3905
3906 
3907        @media (max-height: 500px) { 
3908            .fragment_88494 .modal-image-container .image-player-container.image-playing { 
3909                display: flex; 
3910
3911 
3912            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session { 
3913                height: 60vh !important; 
3914                width: 50vw !important; 
3915                border-radius: var(--border-radius-card) 0 0 0; 
3916
3917 
3918            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session img { 
3919                height: 60vh !important; 
3920                width: 40vw !important; 
3921
3922 
3923            .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer { 
3924                height: 75vh !important; 
3925                width: 50vw !important; 
3926                top: 0; 
3927                right: 0; 
3928                min-height: 85vh; 
3929                border-radius: 0 var(--border-radius-card) var(--border-radius-card) 0; 
3930                align-items: center; 
3931
3932 
3933            .fragment_88494 .modal-image-container .image-player-container.image-playing .carousel-info { 
3934                position: absolute; 
3935                display: flex; 
3936                align-items: center; 
3937                bottom: 0; 
3938                left: -40vw; 
3939                width: 40vw !important; 
3940                background-color: #1E1E1E; 
3941                height: 120px !important; 
3942                border-radius: 0 0 0 var(--border-radius-card); 
3943
3944 
3945 
3946            .fragment_88494 .modal-image-container .image-player-container.image-playing .image-player-session .download-share-container { 
3947                flex-direction: column; 
3948
3949 
3950 
3951            .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container .download-info .donwload-button { 
3952                width: 100%; 
3953                justify-content: center; 
3954
3955 
3956            .fragment_88494 .modal-image-container .image-player-container.image-playing .text-container { 
3957                gap: 16px; 
3958                height: 60vh; 
3959
3960 
3961            .fragment_88494 .modal-image-container .image-player-container.image-playing .gallery-modal-footer .social-media-container { 
3962                top: initial; 
3963
3964 
3965        /* *** */ 
3966 
3967 
3968    </style> 
3969 
3970</#macro> 
3971 
3972 
3973<#-- ################################################################################################################## --> 
3974 
3975 
3976<#-- ############# Site de Crise - Notícia - Render seção download #################################################### --> 
3977 
3978<#macro renderDownloadSection newsInfo> 
3979    <div class="breakpoint"> 
3980        <div class="col-3-10 md-col-1-12 sm-col-1-4"> 
3981            <div class="download-section"> 
3982                <div class="title-container"> 
3983                    <svg viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"> 
3984                        <path d="M10.75 13.75L16 19M16 19L21.25 13.75M16 19V5M27 19V26C27 26.2652 26.8946 26.5196 26.7071 26.7071C26.5196 26.8946 26.2652 27 26 27H6C5.73478 27 5.48043 26.8946 5.29289 26.7071C5.10536 26.5196 5 26.2652 5 26V19" 
3985                              stroke="#373737" stroke-width="2.28571" stroke-linecap="round" stroke-linejoin="round"/> 
3986                    </svg> 
3987                    <p class="title">Downloads </p> 
3988                </div> 
3989 
3990                <div class="sections"> 
3991                    <div class="section text-section"> 
3992                        <p class="title"> <#if locale == "pt_BR"> Texto desta matéria <#else > Text of this article </#if> </p> 
3993                        <a class="button download-news-text" href=""> 
3994                            <#if locale == "pt_BR"> Download do texto <#else > Text download </#if> 
3995                            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" 
3996                                 xmlns="http://www.w3.org/2000/svg"> 
3997                                <path d="M8.0625 10.3125L12 14.25M12 14.25L15.9375 10.3125M12 14.25V3.75M20.25 14.25V19.5C20.25 19.6989 20.171 19.8897 20.0303 20.0303C19.8897 20.171 19.6989 20.25 19.5 20.25H4.5C4.30109 20.25 4.11032 20.171 3.96967 20.0303C3.82902 19.8897 3.75 19.6989 3.75 19.5V14.25" 
3998                                      stroke="#008542" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 
3999                            </svg> 
4000                        </a> 
4001                    </div> 
4002 
4003                    <div class="separator"></div> 
4004 
4005                    <div class="section photo-section"> 
4006                        <p class="title"> <#if locale == "pt_BR"> Fotos desta matéria <#else > Photos from this article </#if> </p> 
4007 
4008 
4009                        <div class="links"> 
4010                            <#list newsInfo.galleryItems as gItem> 
4011                                <#assign url = ""/> 
4012                                <#assign alt = ""/> 
4013                                <#if gItem.originalFile["contentUrl"]?? > 
4014                                    <#assign url = gItem.originalFile.contentUrl/> 
4015                                    <#assign alt = gItem.originalFile.description/> 
4016                                </#if> 
4017 
4018                            <#-- <a class="button" href="${url}"> 
4019                                ${gItem.cardTitle} 
4020                                <svg width="24" height="24" viewBox="0 0 24 24" fill="none" 
4021                                     xmlns="http://www.w3.org/2000/svg"> 
4022                                    <path d="M8.0625 10.3125L12 14.25M12 14.25L15.9375 10.3125M12 14.25V3.75M20.25 14.25V19.5C20.25 19.6989 20.171 19.8897 20.0303 20.0303C19.8897 20.171 19.6989 20.25 19.5 20.25H4.5C4.30109 20.25 4.11032 20.171 3.96967 20.0303C3.82902 19.8897 3.75 19.6989 3.75 19.5V14.25" 
4023                                          stroke="#008542" stroke-width="2" stroke-linecap="round" 
4024                                          stroke-linejoin="round"/> 
4025                                </svg> 
4026                            </a> --> 
4027                            </#list> 
4028 
4029                        </div> 
4030 
4031                        <a class="button download-news-photos" href=""> 
4032                            <#if locale == "pt_BR"> Download das fotos <#else > Download photos </#if> 
4033                            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" 
4034                                 xmlns="http://www.w3.org/2000/svg"> 
4035                                <path d="M8.0625 10.3125L12 14.25M12 14.25L15.9375 10.3125M12 14.25V3.75M20.25 14.25V19.5C20.25 19.6989 20.171 19.8897 20.0303 20.0303C19.8897 20.171 19.6989 20.25 19.5 20.25H4.5C4.30109 20.25 4.11032 20.171 3.96967 20.0303C3.82902 19.8897 3.75 19.6989 3.75 19.5V14.25" 
4036                                      stroke="#008542" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 
4037                            </svg> 
4038                        </a> 
4039                    </div> 
4040 
4041                    <div class="separator"></div> 
4042 
4043                    <div class="section video-section"> 
4044                        <p class="title"> <#if locale == "pt_BR"> Vídeos desta matéria <#else > Videos from this article </#if> </p> 
4045                        <div class="videos-container"></div> 
4046                        <#-- <a class="button" href=""> 
4047                            <#if locale == "pt_BR"> Download dos vídeos <#else > Download videos </#if> 
4048                            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" 
4049                                 xmlns="http://www.w3.org/2000/svg"> 
4050                                <path d="M8.0625 10.3125L12 14.25M12 14.25L15.9375 10.3125M12 14.25V3.75M20.25 14.25V19.5C20.25 19.6989 20.171 19.8897 20.0303 20.0303C19.8897 20.171 19.6989 20.25 19.5 20.25H4.5C4.30109 20.25 4.11032 20.171 3.96967 20.0303C3.82902 19.8897 3.75 19.6989 3.75 19.5V14.25" 
4051                                      stroke="#008542" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 
4052                            </svg> 
4053                        </a> --> 
4054                    </div> 
4055                </div> 
4056            </div> 
4057        </div> 
4058    </div> 
4059 
4060    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.10.1/jszip.min.js"></> 
4061 
4062        <script> 
4063            AUI().ready(function () { 
4064 
4065            const externalArrow = '<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M27 12.5V5H19.5"  stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M18 14L27 5"  stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M23 18V26C23 26.2652 22.8946 26.5196 22.7071 26.7071C22.5196 26.8946 22.2652 27 22 27H6C5.73478 27 5.48043 26.8946 5.29289 26.7071C5.10536 26.5196 5 26.2652 5 26V10C5 9.73478 5.10536 9.48043 5.29289 9.29289C5.48043 9.10536 5.73478 9 6 9H14"  stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>'; 
4066            const downloadArrow = '<svg width="24" height="24" viewBox="0 0 24 24" fill="none"  xmlns="http://www.w3.org/2000/svg"> <path d="M8.0625 10.3125L12 14.25M12 14.25L15.9375 10.3125M12 14.25V3.75M20.25 14.25V19.5C20.25 19.6989 20.171 19.8897 20.0303 20.0303C19.8897 20.171 19.6989 20.25 19.5 20.25H4.5C4.30109 20.25 4.11032 20.171 3.96967 20.0303C3.82902 19.8897 3.75 19.6989 3.75 19.5V14.25" stroke="#008542" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> </svg>'; 
4067 
4068            const newsContent = document.querySelector(".ptb-news__read-news"); 
4069            const newsContentLinks = newsContent.querySelectorAll("a"); 
4070				 
4071				newsContentLinks.forEach((link) => { 
4072					link.classList.add('ptb-news__news-link'); 
4073				}); 
4074				 
4075				 
4076				 
4077				 
4078            const downloadSection = newsContent.querySelector(".download-section"); 
4079            const videosContainer = downloadSection.querySelector(".videos-container"); 
4080 
4081            const youtubeVideoDivList = newsContent.querySelectorAll('div[data-embed-id]'); 
4082 
4083            youtubeVideoDivList.forEach((videoDiv, index) => { 
4084            const aElement = document.createElement("a"); 
4085 
4086            if (!videoDiv.getAttribute("data-embed-id").includes("youtube")) { 
4087            return; 
4088
4089 
4090            const id = videoDiv.getAttribute("data-embed-id").split("/").pop().split("?")[0]; 
4091 
4092            const linkStr = "https://www.youtube.com/watch?v=" + id; 
4093            aElement.href = linkStr; 
4094 
4095            <#assign text = ""/> 
4096            <#if locale == "pt_BR"> 
4097            <#assign text = "'Ver vídeo ' + (index +1) + ' no Youtube'"/> 
4098            <#else > 
4099            <#assign text = "'Watch video ' + (index +1) + ' on Youtube'"/> 
4100            </#if> 
4101            aElement.innerHTML = ${text} + externalArrow; 
4102            aElement.setAttribute("target", "_blank"); 
4103            aElement.classList.add("button"); 
4104            videosContainer.appendChild(aElement); 
4105        }); 
4106 
4107            const videoDivList = newsContent.querySelectorAll('iframe[data-video-liferay]'); 
4108 
4109            videoDivList.forEach((videoDiv, index) => { 
4110            const aElement = document.createElement("a"); 
4111            aElement.href = videoDiv.src; 
4112            aElement.innerHTML = "Download " + (index + 1) + downloadArrow; 
4113            aElement.setAttribute("target", "_blank"); 
4114            aElement.classList.add("button"); 
4115            videosContainer.appendChild(aElement); 
4116        }); 
4117 
4118            if (videosContainer.children.length === 0) { 
4119            videosContainer.parentNode.style.display = "none"; 
4120            videosContainer.parentNode.previousElementSibling.style.display = "none"; 
4121
4122 
4123            const photoSection = downloadSection.querySelector(".photo-section"); 
4124            const photoDownloadButton = photoSection.querySelector(".button"); 
4125            photoDownloadButton.addEventListener("click", (event) => { 
4126            event.preventDefault(); 
4127            let imageUrls = [] 
4128            let imageTitles = [] 
4129            <#list newsInfo.galleryItems as galleryItem> 
4130            <#assign url = ""/> 
4131            <#if galleryItem.originalFile["contentUrl"]?? > 
4132            <#assign url = galleryItem.originalFile["contentUrl"]/> 
4133            </#if> 
4134            imageUrls.push("${url}"); 
4135            imageTitles.push('${galleryItem.cardTitle}'.replace(/([^\w ]|_)/g, '').replaceAll(' ', '_')); 
4136            </#list> 
4137 
4138 
4139            // Instale a biblioteca jszip usando npm: 
4140            <#-- npm install jszip --> 
4141 
4142            <#-- Importe a biblioteca jszip --> 
4143            //import JSZip from 'jszip'; 
4144 
4145 
4146// Função para baixar uma imagem e adicionar ao arquivo ZIP 
4147            const downloadImage = async (zip, imageUrl, imageName) => { 
4148            const response = await fetch(imageUrl); 
4149            const arrayBuffer = await response.arrayBuffer(); 
4150            zip.file(imageName, arrayBuffer); 
4151        }; 
4152 
4153// Função principal assíncrona 
4154            const main = async () => { 
4155            // Crie uma instância do JSZip 
4156            const zip = new JSZip(); 
4157 
4158            // Baixe cada imagem e adicione ao arquivo ZIP 
4159            await Promise.all(imageUrls.map((url, index) => downloadImage(zip, url, imageTitles[index] + "_" + (index + 1) + '.jpg'))); 
4160 
4161            // Gere o conteúdo do arquivo ZIP 
4162            const zipContent = await zip.generateAsync({type: 'blob'}); 
4163 
4164            // Crie um link para o arquivo ZIP e inicie o download 
4165            const link = document.createElement('a'); 
4166					  link.classList.add('ptb-news__zip-link'); 
4167            link.href = URL.createObjectURL(zipContent); 
4168            link.download = 'imagens.zip'; 
4169            document.body.appendChild(link); 
4170            link.click(); 
4171            document.body.removeChild(link); 
4172        }; 
4173 
4174// Chame a função principal 
4175            main(); 
4176 
4177        }); 
4178 
4179            <#if newsInfo.galleryItems?size == 0> 
4180            photoSection.style.display = "none"; 
4181            photoSection.previousElementSibling.style.display = "none"; 
4182            </#if> 
4183 
4184            const textSection = downloadSection.querySelector(".text-section"); 
4185            const textDownloadButton = textSection.querySelector(".button"); 
4186            textDownloadButton.addEventListener("click", () => { 
4187 
4188            const link = document.createElement("a"); 
4189 
4190            const titleText = document.querySelector(".main-headline-container .main-headline").innerHTML; 
4191            const publishSocialMediaText = document.querySelector(".publish_and_social_medias_infos_desk .publish_and_update_date").innerHTML; 
4192            const tagsText = document.querySelector(".tags").innerHTML; 
4193            const newsContentText = document.querySelector(".news-content").innerHTML; 
4194            const text = titleText + publishSocialMediaText + tagsText + newsContentText; 
4195 
4196            const strWithoutHtmlTags = text.replace(/(<([^>]+)>)/gi, ""); 
4197            const strWithoutMarcationBrackets = strWithoutHtmlTags.replace(/ *#\[[^\]]*]/g, ""); 
4198            const strWithoutNextPrevious = strWithoutMarcationBrackets.replace(/Previous    Next/g, ""); 
4199            const strWithoutBlankEnters = strWithoutNextPrevious.replace(/^\s*$(?:\r\n?|\n)/gm, ""); 
4200            const tempInput = document.createElement("textarea"); 
4201            tempInput.value = strWithoutBlankEnters; 
4202 
4203            document.body.appendChild(tempInput); 
4204            tempInput.select(); 
4205            document.execCommand("copy"); 
4206 
4207            if (tempInput.value.length > 0) { 
4208							 
4209					  link.classList.add('ptb-news__news-link'); 
4210 
4211            const file = new Blob([tempInput.value], {type: 'text/plain'}); 
4212            link.href = URL.createObjectURL(file); 
4213            link.download = titleText.replace(/([^\w ]|_)/g, '').replaceAll(' ', '_'); 
4214            link.click(); 
4215            URL.revokeObjectURL(link.href); 
4216
4217 
4218            document.body.removeChild(tempInput); 
4219        }); 
4220 
4221 
4222        }); 
4223 
4224    </script> 
4225 
4226    <style> 
4227        .ptb-news__read-news .download-section * { 
4228            margin: 0; 
4229            padding: 0; 
4230
4231 
4232        .ptb-news__read-news .download-news-text *, 
4233        .ptb-news__read-news .download-news-photos * { 
4234          pointer-events: none; 
4235
4236         
4237 
4238        .ptb-news__read-news .download-section { 
4239            margin: 0; 
4240            padding: var(--space-giant, 80px) 0; 
4241            display: flex; 
4242            flex-direction: column; 
4243            gap: var(--space-xl, 40px); 
4244
4245 
4246        .ptb-news__read-news .download-section svg { 
4247            width: var(--size-sm, 20px); 
4248            height: var(--size-sm, 20px); 
4249
4250 
4251        .ptb-news__read-news .download-section svg path { 
4252            stroke: var(--color-primary-solid-to-bright-200, var(--color-primary-medium)); 
4253
4254 
4255        .ptb-news__read-news .download-section .title-container { 
4256            display: flex; 
4257            gap: var(--space-sm, 16px); 
4258            flex-direction: row; 
4259
4260 
4261        .ptb-news__read-news .download-section .title-container svg { 
4262            width: var(--size-lg, 32px); 
4263            height: var(--size-lg, 32px); 
4264
4265 
4266        .ptb-news__read-news .download-section .title-container svg path { 
4267            stroke: var(--color-neutral-800); 
4268
4269 
4270        .ptb-news__read-news .download-section .title-container .title { 
4271            color: var(--color-neutral-800, #373737); 
4272            font-family: var(--font-family-base); 
4273            font-size: var(--font-size-lg); 
4274            font-style: var(--font-style-normal); 
4275            font-weight: var(--font-weight-bold); 
4276            line-height: var(--line-height-md); /* 31.68px */ 
4277
4278 
4279        .ptb-news__read-news .download-section .sections { 
4280            display: flex; 
4281            flex-direction: column; 
4282            padding: var(--space-lg, 32px); 
4283            gap: var(--space-md, 24px); 
4284            border-radius: var(--border-radius-lg, 16px); 
4285            background: var(--color-neutral-300, #F8F8F8); 
4286
4287 
4288        .ptb-news__read-news .download-section .sections .separator { 
4289            background: #D7D7D7; 
4290            height: var(--size-nano, 2px); 
4291            width: 100%; 
4292
4293 
4294        .ptb-news__read-news .download-section .sections .section { 
4295            display: flex; 
4296            justify-content: space-between; 
4297            gap: var(--space-sm, 16px); 
4298            align-items: center; 
4299            height: var(--size-xxl, 48px); 
4300
4301 
4302        .ptb-news__read-news .download-section .sections .section .title { 
4303            color: var(--color-neutral-dark-to-bright-1000, #010101); 
4304 
4305            font-family: var(--font-family-base); 
4306            font-size: var(--font-size-xs); 
4307            font-style: var(--font-style-normal); 
4308            font-weight: var(--font-weight-bold); 
4309            line-height: var(--line-height-md); 
4310
4311 
4312        .ptb-news__read-news .download-section .section.video-section { 
4313            display: flex; 
4314            flex-direction: column; 
4315            height: fit-content; 
4316            align-items: flex-start; 
4317
4318 
4319        .ptb-news__read-news .download-section .section.video-section svg path { 
4320            stroke: var(--color-primary-medium, #008542); 
4321
4322 
4323        .ptb-news__read-news .download-section .section.video-section .videos-container { 
4324            display: flex; 
4325            flex-direction: column; 
4326            gap: var(--space-sm, 16px); 
4327
4328 
4329        .ptb-news__read-news .download-section .sections .section .button { 
4330            display: flex; 
4331            gap: var(--space-xxs, 8px); 
4332            color: var(--color-primary-solid-to-bright-200, var(--color-primary-medium)); 
4333            font-family: var(--font-family-base); 
4334            font-size: var(--font-size-xxs, 16px); 
4335            font-style: var(--font-style-normal, normal); 
4336            font-weight: var(--font-weight-bold, 700); 
4337            line-height: var(--line-height-lg, 144%); /* 23.04px */ 
4338            text-decoration-line: var(--text-decoration-underline, underline); 
4339
4340 
4341        .ptb-news__read-news .download-section .sections .photo-section .links { 
4342            display: flex; 
4343            flex-direction: column; 
4344            gap: var(--space-sm, 16px); 
4345
4346 
4347 
4348        @media screen and (max-width: ${MAX_MOBILE_WIDTH}px) { 
4349
4350 
4351    </style> 
4352</#macro> 
4353<#-- ################################################################################################################## --> 
4354 
4355 
4356<#function getFirstCategoryObjectOfVocabulary journalArticle vocabulary > 
4357    <#attempt> 
4358        <#assign categories = categoryLocalService.getCategories("com.liferay.journal.model.JournalArticle", journalArticle.getClassPK()) /> 
4359        <#list categories as category> 
4360            <#if vocabulary.getVocabularyId() == category.getVocabularyId()> 
4361                <#return category> 
4362            </#if> 
4363        </#list> 
4364        <#return ""> 
4365 
4366        <#recover> 
4367            <#return "" /> 
4368    </#attempt> 
4369</#function> 
4370 
4371 
4372<#-- ############# Site de Crise - Notícia - Extrair dados de Notícias ################################################ --> 
4373<#-- 
4374Add elements from the sidebar to define your template. Type "${" to use the 
4375autocomplete feature. 
4376--> 
4377<#function extractFeaturedNewsHeadline fieldList xmlArticle> 
4378    <#return getFieldValue(fieldList, xmlArticle, "Título de destaque da notícia")> 
4379</#function> 
4380 
4381<#function extractNewsSummary fieldList xmlArticle> 
4382    <#return getFieldValue(fieldList, xmlArticle, "Subtítulo")> 
4383</#function> 
4384 
4385<#function extractPublishDate journalArticle> 
4386<#--assign lastPublishDate = journalArticle.getModifiedDate()> 
4387<#if journalArticle.getLastPublishDate()??> 
4388    <#assign lastPublishDate = journalArticle.getLastPublishDate()> 
4389<#else> 
4390    <#assign lastPublishDate = journalArticle.getModifiedDate()> 
4391</#if> 
4392<#return lastPublishDate --> 
4393    <#return journalArticle.getDisplayDate() /> 
4394</#function> 
4395 
4396<#-- Seção da imagem de destaque ----------------------------------------------------------------------> 
4397<#function extractNewsImage fieldList xmlArticle  fileEntryService> 
4398    <#assign 
4399    <#-- Grupo da imagem de destaque --> 
4400    newsImageGroupList = getNodes("Fieldset71035101", newsJournalArticle.getDocument().getRootElement()) 
4401    <#-- Url e descrição da imagem de destaque --> 
4402    newsImage = {"url": "--", "alt": "--", "mimeType" :"image/jpg", "title": "", "name": "", "fileEntryId": ""} 
4403    <#-- Créditos da imagem de destaque --> 
4404    newsImageCredits = "" 
4405    <#-- Legenda da imagem de destaque --> 
4406    newsImageLegend = "" 
4407    <#-- Texto do link para download --> 
4408    downloadLinkTitle = "" 
4409
4410 
4411    <#list newsImageGroupList as newsImageGroup> 
4412        <#assign newsImage = getFileFromXML("Image05319221", newsImageGroup, fileEntryService) /> 
4413 
4414    <#-- Grupo com as informações de crédito e legenda da imagem de destaque --> 
4415        <#assign labelGroupList = getNodes("Fieldset43702900", newsImageGroup) /> 
4416        <#list labelGroupList as labelGroup> 
4417        <#-- Investigar do porquê não está funcionando o getFieldValue 
4418        <#assign 
4419                    newsImageCredits = getFieldValue(fieldList, labelGroup, "Crédito da imagem de destaque da notícia") 
4420                    newsImageLegend = getFieldValue(fieldList, labelGroup, "Legenda da imagem de destaque da notícia") 
4421                    downloadLinkTitle = getFieldValue(fieldList, labelGroup, "Texto do link para download") 
4422                    /> 
4423        --> 
4424            <#assign 
4425            newsImageCredits = getSingleNodeString("Text47590088", labelGroup) 
4426            newsImageLegend = getSingleNodeString("Text03239077", labelGroup) 
4427            downloadLinkTitle = getSingleNodeString("Text48804898", labelGroup) /> 
4428        </#list> 
4429    </#list> 
4430 
4431    <#return {"newsImage": newsImage, 
4432    "credits": newsImageCredits, 
4433    "legend": newsImageLegend, 
4434    "linkTitle" : downloadLinkTitle 
4435    }/> 
4436</#function> 
4437 
4438<#function featureNewsVideo xmlArticle fileEntryService> 
4439<#-- Seção do video de destaque -----------------------------------------------------------------------> 
4440    <#assign 
4441    youtubeId = "" 
4442    internalVideoUrl = "" 
4443    featureNewsVideoGroup = getNodes("Fieldset09746751", xmlArticle) 
4444
4445    <#list featureNewsVideoGroup as newsImageFieldSet> 
4446        <#assign 
4447        youtubeId = getFieldValue(fieldList,featureNewsVideoGroup, "ID do vídeo do YouTube do vídeo de destaque") 
4448        internalVideoUrl = getFileFromXML("DocumentLibrary80545771", featureNewsVideoGroup, fileEntryService) 
4449
4450    </#list> 
4451 
4452    <#return {"youtube": youtubeId, "internalVideoUrl" : internalVideoUrl}> 
4453</#function> 
4454 
4455<#-- ################################################################################################################## --> 




Canais

Idioma

Acessibilidade

Escolha um Canal:

Faça uma busca:

Sugestões de busca

Link do botão
Ícone do botão Exibir mais resultados
Ícone de carregamento

Mais pesquisados

Preço dos combustíveis

Pré-Sal

Time Petrobras

Acessibilidade

Alto-Contraste

Desligado

Ligado

Texto Grande

Desligado

Ligado

Idioma:

Selecione um idioma: