{"id":2218,"date":"2026-03-17T15:46:32","date_gmt":"2026-03-17T18:46:32","guid":{"rendered":"https:\/\/gnrambiental.com.br\/noticias\/?p=2218"},"modified":"2026-03-17T15:46:32","modified_gmt":"2026-03-17T18:46:32","slug":"2218-2","status":"publish","type":"post","link":"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/","title":{"rendered":""},"content":{"rendered":"<p>&lt;!DOCTYPE html&gt;<br \/>\n&lt;html lang=&#8221;pt-BR&#8221;&gt;<br \/>\n&lt;head&gt;<br \/>\n&lt;meta charset=&#8221;UTF-8&#8243; \/&gt;<br \/>\n&lt;meta name=&#8221;viewport&#8221; content=&#8221;width=device-width, initial-scale=1.0&#8243;\/&gt;<br \/>\n&lt;title&gt;Gerador de Artigos \u2014 GNR Ambiental&lt;\/title&gt;<br \/>\n&lt;style&gt;<br \/>\n*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }<br \/>\nbody { font-family: system-ui, -apple-system, sans-serif; background: #f3f4f6; color: #1a1a1a; min-height: 100vh; padding: 2rem 1rem; }<br \/>\n.wrap { max-width: 860px; margin: 0 auto; background: white; border-radius: 16px; padding: 2rem; box-shadow: 0 1px 6px rgba(0,0,0,0.08); }<\/p>\n<p>.header { display: flex; align-items: center; gap: 14px; margin-bottom: 28px; padding-bottom: 20px; border-bottom: 1px solid #e5e7eb; }<br \/>\n.logo { width: 46px; height: 46px; border-radius: 10px; background: #0F6E56; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }<br \/>\n.logo svg { width: 22px; height: 22px; }<br \/>\n.header-text h1 { font-size: 18px; font-weight: 600; }<br \/>\n.header-text p { font-size: 13px; color: #6b7280; margin-top: 2px; }<\/p>\n<p>.section-label { font-size: 11px; font-weight: 600; color: #9ca3af; text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 10px; }<\/p>\n<p>.cat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; margin-bottom: 20px; }<br \/>\n.cat-btn { padding: 10px 12px; border-radius: 8px; font-size: 12px; cursor: pointer; text-align: left; line-height: 1.4; font-family: inherit; border: 1px solid #e5e7eb; background: white; color: #374151; transition: all 0.15s; }<br \/>\n.cat-btn:hover { background: #f9fafb; }<br \/>\n.cat-btn.active { border: 1.5px solid #1D9E75; background: #E1F5EE; color: #085041; }<br \/>\n.cat-icon { display: block; font-size: 15px; margin-bottom: 4px; }<br \/>\n.cat-name { font-weight: 500; }<\/p>\n<p>.form-row { margin-bottom: 16px; }<br \/>\nlabel { display: block; font-size: 13px; font-weight: 500; color: #374151; margin-bottom: 5px; }<br \/>\ninput[type=text], textarea, select {<br \/>\nwidth: 100%; padding: 9px 12px;<br \/>\nborder: 1px solid #e5e7eb; border-radius: 8px;<br \/>\nfont-size: 14px; font-family: inherit; color: #1a1a1a;<br \/>\nbackground: white; outline: none; transition: border 0.15s;<br \/>\n}<br \/>\ninput[type=text]:focus, textarea:focus, select:focus { border-color: #1D9E75; }<br \/>\ntextarea { min-height: 72px; resize: vertical; line-height: 1.6; }<br \/>\n.hint { font-size: 12px; color: #9ca3af; margin-top: 4px; }<\/p>\n<p>.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }<br \/>\n@media (max-width: 540px) { .two-col { grid-template-columns: 1fr; } }<\/p>\n<p>.divider { border: none; border-top: 1px solid #e5e7eb; margin: 20px 0; }<\/p>\n<p>.city-wrap { display: flex; flex-wrap: wrap; gap: 7px; }<br \/>\n.city-chip { padding: 5px 14px; border-radius: 999px; font-size: 12px; cursor: pointer; font-family: inherit; border: 1px solid #e5e7eb; background: white; color: #6b7280; transition: all 0.15s; }<br \/>\n.city-chip:hover { background: #f9fafb; }<br \/>\n.city-chip.active { border: 1.5px solid #1D9E75; background: #E1F5EE; color: #085041; font-weight: 500; }<\/p>\n<p>.btn-gen { width: 100%; padding: 13px; background: #0F6E56; color: white; border: none; border-radius: 8px; font-size: 14px; font-weight: 600; cursor: pointer; font-family: inherit; transition: background 0.15s; margin-top: 4px; }<br \/>\n.btn-gen:hover { background: #085041; }<br \/>\n.btn-gen:disabled { background: #e5e7eb; color: #9ca3af; cursor: not-allowed; }<\/p>\n<p>.result-box { margin-top: 24px; border: 1px solid #e5e7eb; border-radius: 12px; overflow: hidden; display: none; }<br \/>\n.result-header { padding: 11px 16px; background: #f9fafb; border-bottom: 1px solid #e5e7eb; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }<br \/>\n.result-label { font-size: 13px; font-weight: 500; color: #6b7280; }<br \/>\n.result-actions { display: flex; gap: 8px; }<br \/>\n.btn-sm { padding: 5px 12px; font-size: 12px; border: 1px solid #e5e7eb; border-radius: 6px; background: white; cursor: pointer; font-family: inherit; transition: background 0.15s; }<br \/>\n.btn-sm:hover { background: #f3f4f6; }<br \/>\n.result-content { padding: 1.5rem; font-size: 14px; line-height: 1.9; white-space: pre-wrap; color: #1a1a1a; }<\/p>\n<p>.dots { display: flex; gap: 6px; align-items: center; padding: 1.5rem; }<br \/>\n.dot { width: 8px; height: 8px; border-radius: 50%; background: #1D9E75; animation: bounce 1.2s infinite; }<br \/>\n.dot:nth-child(2) { animation-delay: 0.2s; }<br \/>\n.dot:nth-child(3) { animation-delay: 0.4s; }<br \/>\n@keyframes bounce { 0%,80%,100%{opacity:.3;transform:scale(.8)} 40%{opacity:1;transform:scale(1)} }<\/p>\n<p>.error-msg { color: #dc2626; font-size: 13px; padding: 1rem 1.5rem; }<\/p>\n<p>.api-warning { background: #fffbeb; border: 1px solid #fcd34d; border-radius: 8px; padding: 10px 14px; font-size: 13px; color: #92400e; margin-bottom: 20px; display: none; }<br \/>\n.api-warning a { color: #0F6E56; text-decoration: underline; }<br \/>\n&lt;\/style&gt;<br \/>\n&lt;\/head&gt;<br \/>\n&lt;body&gt;<br \/>\n&lt;div class=&#8221;wrap&#8221;&gt;<\/p>\n<p>&lt;div class=&#8221;header&#8221;&gt;<br \/>\n&lt;div class=&#8221;logo&#8221;&gt;<br \/>\n&lt;svg viewBox=&#8221;0 0 24 24&#8243; fill=&#8221;none&#8221; stroke=&#8221;white&#8221; stroke-width=&#8221;2&#8243;&gt;<br \/>\n&lt;circle cx=&#8221;12&#8243; cy=&#8221;12&#8243; r=&#8221;10&#8243;\/&gt;<br \/>\n&lt;circle cx=&#8221;12&#8243; cy=&#8221;12&#8243; r=&#8221;4&#8243;\/&gt;<br \/>\n&lt;line x1=&#8221;12&#8243; y1=&#8221;2&#8243; x2=&#8221;12&#8243; y2=&#8221;5&#8243;\/&gt;<br \/>\n&lt;line x1=&#8221;12&#8243; y1=&#8221;19&#8243; x2=&#8221;12&#8243; y2=&#8221;22&#8243;\/&gt;<br \/>\n&lt;line x1=&#8221;2&#8243; y1=&#8221;12&#8243; x2=&#8221;5&#8243; y2=&#8221;12&#8243;\/&gt;<br \/>\n&lt;line x1=&#8221;19&#8243; y1=&#8221;12&#8243; x2=&#8221;22&#8243; y2=&#8221;12&#8243;\/&gt;<br \/>\n&lt;\/svg&gt;<br \/>\n&lt;\/div&gt;<br \/>\n&lt;div class=&#8221;header-text&#8221;&gt;<br \/>\n&lt;h1&gt;Gerador de Artigos \u2014 GNR Ambiental&lt;\/h1&gt;<br \/>\n&lt;p&gt;Artigos t\u00e9cnicos otimizados para SEO e gera\u00e7\u00e3o de leads&lt;\/p&gt;<br \/>\n&lt;\/div&gt;<br \/>\n&lt;\/div&gt;<\/p>\n<p>&lt;div class=&#8221;api-warning&#8221; id=&#8221;api-warning&#8221;&gt;<br \/>\n\u26a0\ufe0f Para usar fora do Claude.ai, insira sua chave de API da Anthropic no campo abaixo.<br \/>\nObtenha em &lt;a href=&#8221;https:\/\/console.anthropic.com\/settings\/keys&#8221; target=&#8221;_blank&#8221;&gt;console.anthropic.com&lt;\/a&gt;.<br \/>\n&lt;\/div&gt;<\/p>\n<p>&lt;div class=&#8221;form-row&#8221; id=&#8221;api-key-row&#8221; style=&#8221;display:none;&#8221;&gt;<br \/>\n&lt;label&gt;Chave de API Anthropic (necess\u00e1ria fora do Claude.ai)&lt;\/label&gt;<br \/>\n&lt;input type=&#8221;text&#8221; id=&#8221;api-key&#8221; placeholder=&#8221;sk-ant-&#8230;&#8221; \/&gt;<br \/>\n&lt;p class=&#8221;hint&#8221;&gt;A chave n\u00e3o \u00e9 salva \u2014 apenas usada nesta sess\u00e3o.&lt;\/p&gt;<br \/>\n&lt;\/div&gt;<\/p>\n<p>&lt;div class=&#8221;section-label&#8221;&gt;Categoria&lt;\/div&gt;<br \/>\n&lt;div class=&#8221;cat-grid&#8221; id=&#8221;cat-grid&#8221;&gt;<br \/>\n&lt;button class=&#8221;cat-btn&#8221; data-cat=&#8221;Gest\u00e3o de Res\u00edduos&#8221; onclick=&#8221;selectCat(this)&#8221;&gt;&lt;span class=&#8221;cat-icon&#8221;&gt;\u267b\ufe0f&lt;\/span&gt;&lt;span class=&#8221;cat-name&#8221;&gt;Gest\u00e3o de Res\u00edduos&lt;\/span&gt;&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;cat-btn&#8221; data-cat=&#8221;Legisla\u00e7\u00e3o Ambiental&#8221; onclick=&#8221;selectCat(this)&#8221;&gt;&lt;span class=&#8221;cat-icon&#8221;&gt;\ud83d\udccb&lt;\/span&gt;&lt;span class=&#8221;cat-name&#8221;&gt;Legisla\u00e7\u00e3o Ambiental&lt;\/span&gt;&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;cat-btn&#8221; data-cat=&#8221;Meio Ambiente e Sustentabilidade&#8221; onclick=&#8221;selectCat(this)&#8221;&gt;&lt;span class=&#8221;cat-icon&#8221;&gt;\ud83c\udf3f&lt;\/span&gt;&lt;span class=&#8221;cat-name&#8221;&gt;Meio Ambiente&lt;\/span&gt;&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;cat-btn&#8221; data-cat=&#8221;Seguran\u00e7a do Trabalho&#8221; onclick=&#8221;selectCat(this)&#8221;&gt;&lt;span class=&#8221;cat-icon&#8221;&gt;\u26a0\ufe0f&lt;\/span&gt;&lt;span class=&#8221;cat-name&#8221;&gt;Seguran\u00e7a do Trabalho&lt;\/span&gt;&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;cat-btn&#8221; data-cat=&#8221;Engenharia El\u00e9trica&#8221; onclick=&#8221;selectCat(this)&#8221;&gt;&lt;span class=&#8221;cat-icon&#8221;&gt;\u26a1&lt;\/span&gt;&lt;span class=&#8221;cat-name&#8221;&gt;Engenharia El\u00e9trica&lt;\/span&gt;&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;cat-btn&#8221; data-cat=&#8221;Engenharia Civil&#8221; onclick=&#8221;selectCat(this)&#8221;&gt;&lt;span class=&#8221;cat-icon&#8221;&gt;\ud83c\udfd7\ufe0f&lt;\/span&gt;&lt;span class=&#8221;cat-name&#8221;&gt;Engenharia Civil&lt;\/span&gt;&lt;\/button&gt;<br \/>\n&lt;\/div&gt;<\/p>\n<p>&lt;div class=&#8221;form-row&#8221;&gt;<br \/>\n&lt;label&gt;Tema principal do artigo&lt;\/label&gt;<br \/>\n&lt;textarea id=&#8221;topic&#8221; placeholder=&#8221;Ex: Descarte correto de res\u00edduos s\u00f3lidos industriais conforme a PNRS&#8230;&#8221;&gt;&lt;\/textarea&gt;<br \/>\n&lt;\/div&gt;<\/p>\n<p>&lt;div class=&#8221;two-col form-row&#8221;&gt;<br \/>\n&lt;div&gt;<br \/>\n&lt;label&gt;Palavra-chave principal (SEO)&lt;\/label&gt;<br \/>\n&lt;input type=&#8221;text&#8221; id=&#8221;keyword&#8221; placeholder=&#8221;Ex: laudo de seguran\u00e7a do trabalho SP&#8221; \/&gt;<br \/>\n&lt;p class=&#8221;hint&#8221;&gt;Ser\u00e1 repetida 5+ vezes no artigo&lt;\/p&gt;<br \/>\n&lt;\/div&gt;<br \/>\n&lt;div&gt;<br \/>\n&lt;label&gt;Tamanho do artigo&lt;\/label&gt;<br \/>\n&lt;select id=&#8221;size&#8221;&gt;<br \/>\n&lt;option value=&#8221;curto&#8221;&gt;Curto (300\u2013500 palavras)&lt;\/option&gt;<br \/>\n&lt;option value=&#8221;medio&#8221; selected&gt;M\u00e9dio (600\u2013900 palavras)&lt;\/option&gt;<br \/>\n&lt;option value=&#8221;longo&#8221;&gt;Longo (1000\u20131400 palavras)&lt;\/option&gt;<br \/>\n&lt;\/select&gt;<br \/>\n&lt;\/div&gt;<br \/>\n&lt;\/div&gt;<\/p>\n<p>&lt;hr class=&#8221;divider&#8221; \/&gt;<\/p>\n<p>&lt;div class=&#8221;section-label&#8221; style=&#8221;margin-bottom:10px;&#8221;&gt;Cidades a citar no artigo &lt;span style=&#8221;font-weight:400;text-transform:none;letter-spacing:0;font-size:11px;&#8221;&gt;(m\u00ednimo 4)&lt;\/span&gt;&lt;\/div&gt;<br \/>\n&lt;div class=&#8221;city-wrap&#8221; id=&#8221;city-wrap&#8221;&gt;<br \/>\n&lt;button class=&#8221;city-chip active&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;S\u00e3o Paulo&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;city-chip active&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;S\u00e3o Bernardo do Campo&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;city-chip active&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;Santo Andr\u00e9&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;city-chip active&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;Diadema&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;city-chip&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;Osasco&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;city-chip&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;Campinas&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;city-chip&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;Sorocaba&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;city-chip&#8221; onclick=&#8221;toggleCity(this)&#8221;&gt;Guarulhos&lt;\/button&gt;<br \/>\n&lt;\/div&gt;<br \/>\n&lt;p class=&#8221;hint&#8221; style=&#8221;margin-top:8px;&#8221;&gt;Clique para selecionar\/desselecionar&lt;\/p&gt;<\/p>\n<p>&lt;hr class=&#8221;divider&#8221; \/&gt;<\/p>\n<p>&lt;button class=&#8221;btn-gen&#8221; id=&#8221;btn-gen&#8221; onclick=&#8221;generateArticle()&#8221;&gt;\u2726 Gerar artigo otimizado&lt;\/button&gt;<\/p>\n<p>&lt;div class=&#8221;result-box&#8221; id=&#8221;result-box&#8221;&gt;<br \/>\n&lt;div class=&#8221;result-header&#8221;&gt;<br \/>\n&lt;span class=&#8221;result-label&#8221; id=&#8221;result-label&#8221;&gt;Artigo gerado&lt;\/span&gt;<br \/>\n&lt;div class=&#8221;result-actions&#8221;&gt;<br \/>\n&lt;button class=&#8221;btn-sm&#8221; onclick=&#8221;copyArticle()&#8221;&gt;Copiar texto&lt;\/button&gt;<br \/>\n&lt;button class=&#8221;btn-sm&#8221; onclick=&#8221;resetForm()&#8221;&gt;Novo artigo&lt;\/button&gt;<br \/>\n&lt;\/div&gt;<br \/>\n&lt;\/div&gt;<br \/>\n&lt;div id=&#8221;result-content&#8221;&gt;&lt;\/div&gt;<br \/>\n&lt;\/div&gt;<\/p>\n<p>&lt;\/div&gt;<\/p>\n<p>&lt;script&gt;<br \/>\nlet selectedCat = &#8221;;<br \/>\nlet articleText = &#8221;;<\/p>\n<p>\/\/ Detectar se est\u00e1 fora do Claude.ai<br \/>\nconst isExternal = !window.location.hostname.includes(&#8216;claude.ai&#8217;) &amp;&amp; window.location.protocol === &#8216;file:&#8217; || (!window.location.hostname.includes(&#8216;claude.ai&#8217;) &amp;&amp; window.location.hostname !== &#8221;);<br \/>\nif (window.location.protocol === &#8216;file:&#8217;) {<br \/>\ndocument.getElementById(&#8216;api-warning&#8217;).style.display = &#8216;block&#8217;;<br \/>\ndocument.getElementById(&#8216;api-key-row&#8217;).style.display = &#8216;block&#8217;;<br \/>\n}<\/p>\n<p>function selectCat(el) {<br \/>\ndocument.querySelectorAll(&#8216;.cat-btn&#8217;).forEach(b =&gt; b.classList.remove(&#8216;active&#8217;));<br \/>\nel.classList.add(&#8216;active&#8217;);<br \/>\nselectedCat = el.dataset.cat;<br \/>\n}<\/p>\n<p>function toggleCity(el) {<br \/>\nel.classList.toggle(&#8216;active&#8217;);<br \/>\n}<\/p>\n<p>function getSelectedCities() {<br \/>\nreturn [&#8230;document.querySelectorAll(&#8216;.city-chip.active&#8217;)].map(c =&gt; c.textContent.trim());<br \/>\n}<\/p>\n<p>function resetForm() {<br \/>\ndocument.getElementById(&#8216;result-box&#8217;).style.display = &#8216;none&#8217;;<br \/>\ndocument.getElementById(&#8216;topic&#8217;).value = &#8221;;<br \/>\ndocument.getElementById(&#8216;keyword&#8217;).value = &#8221;;<br \/>\ndocument.getElementById(&#8216;size&#8217;).value = &#8216;medio&#8217;;<br \/>\ndocument.querySelectorAll(&#8216;.cat-btn&#8217;).forEach(b =&gt; b.classList.remove(&#8216;active&#8217;));<br \/>\ndocument.querySelectorAll(&#8216;.city-chip&#8217;).forEach(c =&gt; {<br \/>\nconst defaults = [&#8216;S\u00e3o Paulo&#8217;,&#8217;S\u00e3o Bernardo do Campo&#8217;,&#8217;Santo Andr\u00e9&#8217;,&#8217;Diadema&#8217;];<br \/>\nc.classList.toggle(&#8216;active&#8217;, defaults.includes(c.textContent.trim()));<br \/>\n});<br \/>\nselectedCat = &#8221;;<br \/>\narticleText = &#8221;;<br \/>\nconst btn = document.getElementById(&#8216;btn-gen&#8217;);<br \/>\nbtn.disabled = false;<br \/>\nbtn.textContent = &#8216;\u2726 Gerar artigo otimizado&#8217;;<br \/>\n}<\/p>\n<p>function copyArticle() {<br \/>\nif (!articleText) return;<br \/>\nnavigator.clipboard.writeText(articleText).then(() =&gt; {<br \/>\nconst btn = document.querySelector(&#8216;.result-actions .btn-sm&#8217;);<br \/>\nbtn.textContent = &#8216;Copiado!&#8217;;<br \/>\nsetTimeout(() =&gt; btn.textContent = &#8216;Copiar texto&#8217;, 2000);<br \/>\n});<br \/>\n}<\/p>\n<p>async function generateArticle() {<br \/>\nif (!selectedCat) return alert(&#8216;Selecione uma categoria.&#8217;);<br \/>\nconst topic = document.getElementById(&#8216;topic&#8217;).value.trim();<br \/>\nconst keyword = document.getElementById(&#8216;keyword&#8217;).value.trim();<br \/>\nconst size = document.getElementById(&#8216;size&#8217;).value;<br \/>\nconst cities = getSelectedCities();<br \/>\nif (!topic) return alert(&#8216;Descreva o tema do artigo.&#8217;);<br \/>\nif (!keyword) return alert(&#8216;Insira a palavra-chave principal.&#8217;);<br \/>\nif (cities.length &lt; 4) return alert(&#8216;Selecione pelo menos 4 cidades.&#8217;);<\/p>\n<p>const apiKey = document.getElementById(&#8216;api-key&#8217;) ? document.getElementById(&#8216;api-key&#8217;).value.trim() : &#8221;;<\/p>\n<p>const sizeMap = { curto: &#8216;300 a 500 palavras&#8217;, medio: &#8216;600 a 900 palavras&#8217;, longo: &#8216;1000 a 1400 palavras&#8217; };<\/p>\n<p>const prompt = `Voc\u00ea \u00e9 um engenheiro especialista em meio ambiente, seguran\u00e7a do trabalho e engenharia aplicada, com foco em produ\u00e7\u00e3o de conte\u00fado t\u00e9cnico e persuasivo para gera\u00e7\u00e3o de leads. Trabalha para a GNR Ambiental.<\/p>\n<p>Crie um artigo completo, otimizado para SEO e convers\u00e3o, sobre o tema abaixo.<\/p>\n<p>CATEGORIA: ${selectedCat}<br \/>\nTEMA PRINCIPAL: ${topic}<br \/>\nPALAVRA-CHAVE PRINCIPAL: ${keyword}<br \/>\nTAMANHO: ${sizeMap[size]}<br \/>\nCIDADES A CITAR: ${cities.join(&#8216;, &#8216;)}<\/p>\n<p>OBJETIVO:<br \/>\n&#8211; Ranquear no Google<br \/>\n&#8211; Gerar leads qualificados<br \/>\n&#8211; Demonstrar autoridade t\u00e9cnica da GNR Ambiental<\/p>\n<p>DIRETRIZES OBRIGAT\u00d3RIAS:<\/p>\n<p>1. SEO<br \/>\n&#8211; Repetir a palavra-chave principal pelo menos 5 vezes ao longo do texto<br \/>\n&#8211; Usar varia\u00e7\u00f5es sem\u00e2nticas da palavra-chave<br \/>\n&#8211; Criar t\u00edtulo chamativo com foco em busca (H1)<br \/>\n&#8211; Criar meta descri\u00e7\u00e3o at\u00e9 155 caracteres (inserir logo abaixo do t\u00edtulo, com r\u00f3tulo &#8220;META DESCRI\u00c7\u00c3O:&#8221;)<br \/>\n&#8211; Usar subt\u00edtulos H2 e H3 (marcar como H2: e H3:)<br \/>\n&#8211; Inserir listas com bullet points onde pertinente<\/p>\n<p>2. CONTE\u00daDO<br \/>\n&#8211; Explicar o problema de forma clara e pr\u00e1tica<br \/>\n&#8211; Explicar quando o servi\u00e7o \u00e9 obrigat\u00f3rio (normas, leis, riscos)<br \/>\n&#8211; Inserir normas t\u00e9cnicas reais e relevantes (NRs, NBRs, CETESB, ISO etc.) \u2014 NUNCA inventar normas<br \/>\n&#8211; Mostrar consequ\u00eancias de n\u00e3o realizar o servi\u00e7o<br \/>\n&#8211; Explicar como \u00e9 feito (passo a passo t\u00e9cnico simplificado)<br \/>\n&#8211; Incluir exemplos reais ou situa\u00e7\u00f5es comuns<\/p>\n<p>3. REGIONALIZA\u00c7\u00c3O<br \/>\nCitar naturalmente pelo menos 4 das seguintes cidades: ${cities.join(&#8216;, &#8216;)}<\/p>\n<p>4. AUTORIDADE \u2014 incluir t\u00f3pico &#8220;Por que escolher a GNR Ambiental?&#8221; com:<br \/>\n&#8211; Eng. Guilherme Nunes Rosa<br \/>\n&#8211; Engenheiro Ambiental, Civil, Eletricista e de Seguran\u00e7a do Trabalho<br \/>\n&#8211; Perito Judicial<br \/>\n&#8211; Mais de 10 anos de experi\u00eancia<br \/>\n&#8211; Empresa com certifica\u00e7\u00e3o ISO 17025 (ru\u00eddo) e ISO 9001<br \/>\n&#8211; Equipamentos pr\u00f3prios e equipe especializada<\/p>\n<p>5. CONVERS\u00c3O \u2014 inserir CTA no meio E no final do artigo:<br \/>\n\ud83d\udcde (11) 2374-1201<br \/>\n\ud83d\udcf1 (11) 95277-2125<br \/>\n\u2709\ufe0f comercial2@gnrambiental.com.br<br \/>\nUsar frases como: &#8220;Solicite um or\u00e7amento&#8221;, &#8220;Fale com um especialista&#8221;, &#8220;Atendimento r\u00e1pido&#8221;<\/p>\n<p>6. ESTRUTURA DO ARTIGO (nesta ordem):<br \/>\nH1: T\u00edtulo<br \/>\nMETA DESCRI\u00c7\u00c3O: (at\u00e9 155 caracteres)<br \/>\n&#8211; Introdu\u00e7\u00e3o (com dor do cliente)<br \/>\nH2: O que \u00e9 [tema]<br \/>\nH2: Quando \u00e9 obrigat\u00f3rio<br \/>\nH2: Normas aplic\u00e1veis<br \/>\nH2: Como \u00e9 feito o servi\u00e7o<br \/>\nH2: Riscos de n\u00e3o realizar<br \/>\nH2: Benef\u00edcios<br \/>\n[CTA intermedi\u00e1rio]<br \/>\nH2: Por que escolher a GNR Ambiental?<br \/>\nH2: Conclus\u00e3o + CTA forte<\/p>\n<p>7. No final do artigo, incluir obrigatoriamente:<br \/>\nALT DA IMAGEM: [descri\u00e7\u00e3o com palavra-chave]<\/p>\n<p>8. LINGUAGEM:<br \/>\n&#8211; T\u00e9cnica, mas acess\u00edvel<br \/>\n&#8211; Frases curtas e diretas<br \/>\n&#8211; Palavras de transi\u00e7\u00e3o<br \/>\n&#8211; Evitar linguagem gen\u00e9rica de IA<\/p>\n<p>PROIBIDO: inventar normas, copiar conte\u00fado, linguagem gen\u00e9rica.<\/p>\n<p>Escreva o artigo completo agora, sem introdu\u00e7\u00f5es ou coment\u00e1rios fora do artigo:`;<\/p>\n<p>const btn = document.getElementById(&#8216;btn-gen&#8217;);<br \/>\nbtn.disabled = true;<br \/>\nbtn.textContent = &#8216;Gerando artigo&#8230;&#8217;;<\/p>\n<p>const resultBox = document.getElementById(&#8216;result-box&#8217;);<br \/>\nconst resultContent = document.getElementById(&#8216;result-content&#8217;);<br \/>\nresultBox.style.display = &#8216;block&#8217;;<br \/>\nresultContent.innerHTML = &#8216;&lt;div class=&#8221;dots&#8221;&gt;&lt;div class=&#8221;dot&#8221;&gt;&lt;\/div&gt;&lt;div class=&#8221;dot&#8221;&gt;&lt;\/div&gt;&lt;div class=&#8221;dot&#8221;&gt;&lt;\/div&gt;&lt;\/div&gt;&#8217;;<br \/>\ndocument.getElementById(&#8216;result-label&#8217;).textContent = `Artigo \u2014 ${selectedCat}`;<br \/>\nresultBox.scrollIntoView({ behavior: &#8216;smooth&#8217;, block: &#8216;start&#8217; });<\/p>\n<p>const headers = { &#8216;Content-Type&#8217;: &#8216;application\/json&#8217; };<br \/>\nif (apiKey) headers[&#8216;x-api-key&#8217;] = apiKey;<\/p>\n<p>try {<br \/>\nconst response = await fetch(&#8216;https:\/\/api.anthropic.com\/v1\/messages&#8217;, {<br \/>\nmethod: &#8216;POST&#8217;,<br \/>\nheaders,<br \/>\nbody: JSON.stringify({<br \/>\nmodel: &#8216;claude-sonnet-4-20250514&#8217;,<br \/>\nmax_tokens: 2000,<br \/>\nmessages: [{ role: &#8216;user&#8217;, content: prompt }]<br \/>\n})<br \/>\n});<br \/>\nconst data = await response.json();<br \/>\nif (data.error) {<br \/>\nresultContent.innerHTML = `&lt;p class=&#8221;error-msg&#8221;&gt;Erro da API: ${data.error.message}&lt;\/p&gt;`;<br \/>\n} else {<br \/>\narticleText = data.content?.map(b =&gt; b.text || &#8221;).join(&#8221;) || &#8216;Erro ao gerar o artigo.&#8217;;<br \/>\nresultContent.innerHTML = `&lt;div class=&#8221;result-content&#8221;&gt;${articleText}&lt;\/div&gt;`;<br \/>\n}<br \/>\n} catch (err) {<br \/>\nresultContent.innerHTML = &#8216;&lt;p class=&#8221;error-msg&#8221;&gt;Erro de conex\u00e3o. Verifique sua internet e tente novamente.&lt;\/p&gt;&#8217;;<br \/>\n}<\/p>\n<p>btn.disabled = false;<br \/>\nbtn.textContent = &#8216;\u2726 Gerar novo artigo&#8217;;<br \/>\n}<br \/>\n&lt;\/script&gt;<br \/>\n&lt;\/body&gt;<br \/>\n&lt;\/html&gt;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&lt;!DOCTYPE html&gt; &lt;html lang=&#8221;pt-BR&#8221;&gt; &lt;head&gt; &lt;meta charset=&#8221;UTF-8&#8243; \/&gt; &lt;meta name=&#8221;viewport&#8221; content=&#8221;width=device-width, initial-scale=1.0&#8243;\/&gt; &lt;title&gt;Gerador de Artigos \u2014 GNR Ambiental&lt;\/title&gt; &lt;style&gt; *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: system-ui, -apple-system, sans-serif; background: #f3f4f6; color: #1a1a1a; min-height: 100vh; padding: 2rem 1rem; } .wrap { max-width: 860px; margin: 0 auto; background: white; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","_joinchat":[],"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2218","post","type-post","status-publish","format-standard","hentry","category-sem-categoria"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>- GNR Ambiental<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"- GNR Ambiental\" \/>\n<meta property=\"og:description\" content=\"&lt;!DOCTYPE html&gt; &lt;html lang=&#8221;pt-BR&#8221;&gt; &lt;head&gt; &lt;meta charset=&#8221;UTF-8&#8243; \/&gt; &lt;meta name=&#8221;viewport&#8221; content=&#8221;width=device-width, initial-scale=1.0&#8243;\/&gt; &lt;title&gt;Gerador de Artigos \u2014 GNR Ambiental&lt;\/title&gt; &lt;style&gt; *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: system-ui, -apple-system, sans-serif; background: #f3f4f6; color: #1a1a1a; min-height: 100vh; padding: 2rem 1rem; } .wrap { max-width: 860px; margin: 0 auto; background: white; [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/\" \/>\n<meta property=\"og:site_name\" content=\"GNR Ambiental\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-17T18:46:32+00:00\" \/>\n<meta name=\"author\" content=\"blog_gnr\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"blog_gnr\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/\",\"url\":\"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/\",\"name\":\"- GNR Ambiental\",\"isPartOf\":{\"@id\":\"https:\/\/gnrambiental.com.br\/noticias\/#website\"},\"datePublished\":\"2026-03-17T18:46:32+00:00\",\"author\":{\"@id\":\"https:\/\/gnrambiental.com.br\/noticias\/#\/schema\/person\/665c9a349aa30972fa8d07edc2ee38af\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/\"]}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/gnrambiental.com.br\/noticias\/#website\",\"url\":\"https:\/\/gnrambiental.com.br\/noticias\/\",\"name\":\"GNR Ambiental\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/gnrambiental.com.br\/noticias\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/gnrambiental.com.br\/noticias\/#\/schema\/person\/665c9a349aa30972fa8d07edc2ee38af\",\"name\":\"blog_gnr\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/gnrambiental.com.br\/noticias\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e4c10858129539ef55035c1f4f80f9c3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e4c10858129539ef55035c1f4f80f9c3?s=96&d=mm&r=g\",\"caption\":\"blog_gnr\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"- GNR Ambiental","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/","og_locale":"pt_BR","og_type":"article","og_title":"- GNR Ambiental","og_description":"&lt;!DOCTYPE html&gt; &lt;html lang=&#8221;pt-BR&#8221;&gt; &lt;head&gt; &lt;meta charset=&#8221;UTF-8&#8243; \/&gt; &lt;meta name=&#8221;viewport&#8221; content=&#8221;width=device-width, initial-scale=1.0&#8243;\/&gt; &lt;title&gt;Gerador de Artigos \u2014 GNR Ambiental&lt;\/title&gt; &lt;style&gt; *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: system-ui, -apple-system, sans-serif; background: #f3f4f6; color: #1a1a1a; min-height: 100vh; padding: 2rem 1rem; } .wrap { max-width: 860px; margin: 0 auto; background: white; [&hellip;]","og_url":"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/","og_site_name":"GNR Ambiental","article_published_time":"2026-03-17T18:46:32+00:00","author":"blog_gnr","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"blog_gnr","Est. tempo de leitura":"12 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/","url":"https:\/\/gnrambiental.com.br\/noticias\/2218-2\/","name":"- GNR Ambiental","isPartOf":{"@id":"https:\/\/gnrambiental.com.br\/noticias\/#website"},"datePublished":"2026-03-17T18:46:32+00:00","author":{"@id":"https:\/\/gnrambiental.com.br\/noticias\/#\/schema\/person\/665c9a349aa30972fa8d07edc2ee38af"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gnrambiental.com.br\/noticias\/2218-2\/"]}]},{"@type":"WebSite","@id":"https:\/\/gnrambiental.com.br\/noticias\/#website","url":"https:\/\/gnrambiental.com.br\/noticias\/","name":"GNR Ambiental","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gnrambiental.com.br\/noticias\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/gnrambiental.com.br\/noticias\/#\/schema\/person\/665c9a349aa30972fa8d07edc2ee38af","name":"blog_gnr","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/gnrambiental.com.br\/noticias\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e4c10858129539ef55035c1f4f80f9c3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e4c10858129539ef55035c1f4f80f9c3?s=96&d=mm&r=g","caption":"blog_gnr"}}]}},"_links":{"self":[{"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/posts\/2218"}],"collection":[{"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/comments?post=2218"}],"version-history":[{"count":0,"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/posts\/2218\/revisions"}],"wp:attachment":[{"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/media?parent=2218"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/categories?post=2218"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gnrambiental.com.br\/noticias\/wp-json\/wp\/v2\/tags?post=2218"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}