(function(){var m={"/informatica-para-clinicas":["Suporte informático para clínicas","Informática especializada para clínicas: suporte 24/7, redes Wi-Fi, firewall, backups e proteção de dados de doentes (RGPD)."],"/informatica-para-hotelaria":["Suporte informático para hotéis","IT gerido para hotelaria: Wi-Fi para hóspedes, integração de PMS, redes segmentadas e disponibilidade 24/7."],"/consultoria-informatica-lisboa":["Consultoria informática para empresas","Consultoria de IT em Lisboa: infraestrutura, redes, cibersegurança, cloud e IT gerido, com diagnóstico e plano."],"/empresa-informatica":["Monitorização de IT 24/7","Monitorização proativa de servidores, redes e sistemas 24/7, com deteção e resolução antes do impacto no negócio."],"/empresa-informatica-it":["Helpdesk e suporte ao utilizador","Helpdesk e apoio ao utilizador para empresas: telefone, e-mail, acesso remoto e presença no local, com SLA."],"/redes-cablagem-informatica":["Redes estruturadas e cablagem","Instalação de redes estruturadas e cablagem certificada para empresas: projeto, execução e certificação."],"/redes-wireless-instalacao":["Redes wireless empresariais","Instalação de redes Wi-Fi empresariais de alto desempenho: cobertura total, roaming e segurança."],"/office-365-cloud":["Microsoft 365 e Cloud","Implementação, migração e gestão de Microsoft 365 e cloud: e-mail, ficheiros e colaboração seguros."],"/redes-informaticas-escritorios":["Instalação de redes em escritórios","Projeto e instalação de redes informáticas em escritórios, incluindo mudanças de instalações."],"/firewalls-seguranca-informatica":["Firewalls e cibersegurança","Firewalls geridas e cibersegurança para empresas: proteção de rede, endpoint, VPN e monitorização."],"/backups-solucoes-de-backup":["Backup gerido e recuperação de dados","Backup gerido e recuperação de dados: cópias automáticas, seguras e testadas, com monitorização."],"/central-telefonica-ippbx":["Central telefónica IP PBX","Instalação e gestão de central telefónica IP PBX / VoIP para empresas: comunicações fiáveis e escaláveis."],"/apple-servicos-empresas":["Serviços Apple para empresas","Suporte e gestão de dispositivos Apple e Mac em ambientes empresariais."],"/servicos-informatica-a-empresas-lisboa":["Serviços de IT em Lisboa","Serviços de IT geridos para empresas em Lisboa: suporte, redes e manutenção com resposta rápida."],"/servicos-informatica-empresas":["Serviços informáticos para empresas","Serviços informáticos geridos para empresas em Portugal: suporte 24/7, redes, cibersegurança e helpdesk."]};var p=location.pathname.replace(/\/+$/,"");var d=m[p];if(!d)return;var s=document.createElement("script");s.type="application/ld+json";s.text=JSON.stringify({"@context":"https://schema.org","@type":"Service","serviceType":d[0],"provider":{"@id":"https://www.dataroad.pt/#localbusiness"},"areaServed":{"@type":"Country","name":"Portugal"},"url":"https://www.dataroad.pt"+p+"/","description":d[1]});document.head.appendChild(s);})();
/* Sintra (pagina 31090) tem slider proprio do Slider Revolution em vez do
bloco de topo das outras cidades. Os dois cartoes sao injectados antes do
conteudo e trazem margin-top:-254px para encaixarem por baixo do bloco de
topo; sem esse bloco ficavam cortados no cimo da pagina. Aqui movemo-los
para logo a seguir ao slider, onde encaixam da mesma maneira.
So actua na pagina de Sintra. */
document.addEventListener("DOMContentLoaded", function () {
if (!document.body.classList.contains("page-id-31090")) return;
var cartoes = document.querySelector(".dr-cards");
var slider = document.querySelector("sr7-module");
if (cartoes && slider && slider.parentNode) {
slider.parentNode.insertBefore(cartoes, slider.nextSibling);
}
});
/* DR - Telefone clicavel e bem formado (movel)
1) Normaliza todos os href="tel:..." para o formato internacional +351211459950.
Havia 'tel:351 211 459 950' (com espacos) em todas as paginas -- o Safari do
iPhone recusa espacos, por isso o toque no numero nao abria o marcador.
2) Torna clicaveis os numeros que estao so em texto (pagina de contactos e rodape).
*/
(function () {
"use strict";
var NUM = /(?:\+?351[\s.\-]?)?(2\d{2})[\s.\-]?(\d{3})[\s.\-]?(\d{3})/;
function normalizar() {
var n = 0;
document.querySelectorAll('a[href^="tel:"]').forEach(function (a) {
var h = a.getAttribute('href') || '';
var d = h.slice(4).replace(/[^\d]/g, '');
if (!d) return;
if (d.length === 9) { d = '351' + d; }
var novo = 'tel:+' + d;
if (novo !== h) { a.setAttribute('href', novo); n++; }
});
return n;
}
function saltar(el) {
if (!el) return true;
if (el.closest('a,button,script,style,noscript,input,textarea,select,#wpadminbar')) return true;
return false;
}
function ligar() {
var n = 0;
var w = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT, null, false);
var lista = [], no;
while ((no = w.nextNode())) {
var t = no.nodeValue || '';
if (!NUM.test(t)) continue;
if (saltar(no.parentElement)) continue;
lista.push(no);
}
lista.forEach(function (no) {
var t = no.nodeValue;
var m = t.match(NUM);
if (!m) return;
var tel = '+351' + m[1] + m[2] + m[3];
var antes = t.slice(0, m.index);
var alvo = m[0];
var depois = t.slice(m.index + alvo.length);
var frag = document.createDocumentFragment();
if (antes) frag.appendChild(document.createTextNode(antes));
var a = document.createElement('a');
a.className = 'dr-tel';
a.href = 'tel:' + tel;
a.textContent = alvo;
frag.appendChild(a);
if (depois) frag.appendChild(document.createTextNode(depois));
no.parentNode.replaceChild(frag, no);
n++;
});
return n;
}
function estilo() {
if (document.getElementById('dr-tel-css')) return;
var st = document.createElement('style');
st.id = 'dr-tel-css';
st.textContent = 'a.dr-tel{color:inherit !important;text-decoration:none}'
+ 'a.dr-tel:hover,a.dr-tel:focus{text-decoration:underline}'
+ '@media (max-width:767px){a.dr-tel{display:inline-block;padding:4px 0}}';
(document.head || document.documentElement).appendChild(st);
}
function correr() { estilo(); normalizar(); ligar(); }
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', correr);
} else {
correr();
}
window.addEventListener('load', function () { setTimeout(correr, 500); });
})();
(function () {
var n = 0;
// O tema substitui a marcacao do widget Contador do Elementor. O gestor do
// Elementor procura .elementor-counter-number, nao a encontra e lanca um erro
// por cada contador na pagina. Esvaziamos a lista de gestores desse widget.
function neutralizarContadorElementor() {
try {
var ef = window.elementorFrontend;
if (ef && ef.elementsHandler && ef.elementsHandler.elementsHandlers) {
ef.elementsHandler.elementsHandlers['counter.default'] = [];
}
} catch (e) {}
}
// O tema ja carrega counterUp e waypoints mas nunca os liga aos numeros.
function animarContadores() {
var q = window.jQuery;
if (!q || !q.fn.counterUp) { return; }
q('.dr-num').each(function () {
if (this.getAttribute('data-dr-contado')) { return; }
this.setAttribute('data-dr-contado', '1');
q(this).counterUp({ delay: 12, time: 1400 });
});
}
function arranque() {
if (!window.jQuery) { if (n++ < 200) { setTimeout(arranque, 40); } return; }
var q = window.jQuery;
q(window).on('elementor/frontend/init', neutralizarContadorElementor);
neutralizarContadorElementor();
q(window).on('load', animarContadores);
}
arranque();
})();
/* ---- DR: acessibilidade (nomes acessiveis em links, campos e botoes) ---- */
(function () {
function texto(el) {
if (!el) { return ''; }
return (el.textContent || '').replace(/\s+/g, ' ').trim();
}
function nomeAcessivel(a) {
var t = texto(a);
if (t) { return t; }
if (a.getAttribute('aria-label') || a.getAttribute('title')) { return 'ok'; }
var img = a.querySelector('img[alt]');
if (img && img.getAttribute('alt')) { return 'ok'; }
return '';
}
function daUrl(href) {
try {
var p = new URL(href, location.origin).pathname.replace(/\/+$/, '').split('/').pop();
if (!p) { return 'Pagina inicial'; }
return p.replace(/-/g, ' ').replace(/^./, function (c) { return c.toUpperCase(); });
} catch (e) { return 'Saber mais'; }
}
function corrigir() {
// 1) links sem nome acessivel (setas de "ler mais", icones)
var links = document.querySelectorAll('a[href]');
Array.prototype.forEach.call(links, function (a) {
if (nomeAcessivel(a)) { return; }
var caixa = a.closest('.service-box, .services-item, .single-service, .elementor-widget, article, li, div');
var titulo = caixa ? caixa.querySelector('h1, h2, h3, h4, h5, h6') : null;
var base = texto(titulo);
a.setAttribute('aria-label', base ? ('Saber mais sobre ' + base) : daUrl(a.getAttribute('href')));
});
// 2) campos de formulario sem etiqueta
var campos = document.querySelectorAll('input:not([type=hidden]), select, textarea');
Array.prototype.forEach.call(campos, function (c) {
if (c.getAttribute('aria-label') || c.getAttribute('aria-labelledby')) { return; }
if (c.id && document.querySelector('label[for="' + c.id + '"]')) { return; }
if (c.closest('label')) { return; }
var n = c.getAttribute('placeholder') || '';
if (!n) {
if (c.name === 's') { n = 'Pesquisar no site'; }
else if (c.type === 'submit') { n = c.value || 'Enviar'; }
else if (c.type === 'checkbox') { n = 'Opcao'; }
else { n = 'Campo de formulario'; }
}
c.setAttribute('aria-label', n);
});
// 3) botoes sem nome
var botoes = document.querySelectorAll('button');
Array.prototype.forEach.call(botoes, function (b) {
if (texto(b) || b.getAttribute('aria-label') || b.getAttribute('title')) { return; }
var cls = b.className || '';
if (cls.indexOf('quearys') > -1 || cls.indexOf('search') > -1) { b.setAttribute('aria-label', 'Abrir pesquisa'); }
else if (cls.indexOf('close') > -1) { b.setAttribute('aria-label', 'Fechar'); }
else { b.setAttribute('aria-label', 'Botao'); }
});
// 4) imagens sem atributo alt (decorativas)
var imgs = document.querySelectorAll('img:not([alt])');
Array.prototype.forEach.call(imgs, function (i) { i.setAttribute('alt', ''); });
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', corrigir);
} else {
corrigir();
}
window.addEventListener('load', function () { setTimeout(corrigir, 800); });
})();
/* ---- DR: FAQ com todas as perguntas fechadas (pagina 24747) ----
The Plus abre a primeira pergunta de cada bloco marcando-a com a classe
'active-default'. Um clique do utilizador usa apenas 'active'. Por isso
basta fechar o que tiver 'active-default': nunca interfere com cliques. */
(function () {
function fecharPredefinidas() {
var hs = document.querySelectorAll('.plus-accordion-header.active-default');
Array.prototype.forEach.call(hs, function (h) {
h.classList.remove('active-default', 'active');
h.setAttribute('aria-expanded', 'false');
var c = h.nextElementSibling;
if (c && c.classList.contains('plus-accordion-content')) {
c.classList.remove('active-default', 'active');
c.style.display = 'none';
}
});
}
function arrancar() {
if (!document.body.classList.contains('page-id-24747')) { return; }
fecharPredefinidas();
var obs = new MutationObserver(fecharPredefinidas);
obs.observe(document.body, { subtree: true, attributes: true, attributeFilter: ['class'] });
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', arrancar);
} else {
arrancar();
}
})();
Cablagem Estruturada CAT6A e Fibra Ótica em Lisboa
A cablagem é o alicerce invisível de toda a sua tecnologia. A DataRoad instala cablagem estruturada CAT6A e fibra ótica em Lisboa, certificada até 10 Gbps, com bastidores organizados e documentação que dura anos.
✓ Certificação até 10 Gbps✓ CAT6A e fibra✓ Bastidores organizados✓ Documentação completa
Feita para durar 15 anos, não para remendar
Uma boa cablagem estruturada evita anos de problemas intermitentes. A DataRoad executa instalações certificadas de cobre (CAT6/CAT6A) e fibra ótica, com etiquetagem rigorosa, gestão de cabos impecável e relatórios de certificação por tomada.
🧵
Cablagem CAT6/CAT6A
Instalação de cabo de cobre até 10 Gbps para dados e voz, testada tomada a tomada.
🔦
Fibra ótica
Ligações em fibra entre bastidores, pisos ou edifícios, para alto débito e distância.
🗄️
Bastidores e patch panels
Montagem, organização e etiquetagem profissional dos bastidores.
📐
Projeto de infraestrutura
Dimensionamento de pontos, caminhos de cabo e crescimento futuro.
🏢
Obras e remodelações
Coordenação com obras e arquitetura para uma instalação limpa e integrada.
✅
Certificação por tomada
Testes com equipamento certificador e relatório entregue ao cliente.
Porquê a DataRoad
Instalações que passam em certificação — não improvisos que falham a meio.
📄
Documentação completa
Esquemas, etiquetagem e relatórios de certificação entregues no fim.
🧩
Solução à medida
Projeto desenhado para o seu espaço, crescimento e orçamento.
⚙️
Marcas de confiança
Trabalhamos com equipamento profissional fiável e com garantia.
🔒
Segurança de raiz
Segmentação, VLANs e boas práticas para uma rede robusta e segura.
🤝
Suporte pós-obra
Disponíveis para manutenção, expansão e apoio contínuo.
🧹
Instalação limpa
Execução organizada, com o mínimo de perturbação à sua operação.
Como trabalhamos
Um processo simples, transparente e sem surpresas.
Levantamento
Visita técnica ao local, medições e análise de necessidades.
Projeto e proposta
Desenho da solução, materiais e orçamento claro, sem surpresas.
Instalação
Execução limpa e organizada, com o mínimo de perturbação à operação.
Testes e garantia
Certificação, documentação e garantia — mais suporte pós-obra.
Onde atuamos em Lisboa
Deslocação ao local em toda a Grande Lisboa e suporte remoto imediato para todo o país.
LisboaParque das NaçõesOeirasCascaisAmadoraSintraLouresOdivelasAlmadaBarreiroSetúbalVila Franca de Xira
Perguntas frequentes
As dúvidas mais comuns sobre cablagem estruturada em Lisboa.
Qual a diferença entre CAT6 e CAT6A?
Ambas suportam Gigabit; a CAT6A permite 10 Gbps de forma fiável em distâncias maiores e com melhor imunidade a interferências. Recomendamos CAT6A para instalações novas orientadas ao futuro.
Certificam a instalação?
Sim. Testamos cada tomada com equipamento certificador e entregamos um relatório de certificação, garantindo o desempenho da cablagem.
Quando faz sentido usar fibra ótica?
A fibra é ideal para ligar bastidores, pisos ou edifícios, para grandes débitos ou longas distâncias, e para ligações de backbone entre equipamentos.
Instalam durante obras de escritório?
Sim, coordenamos com a obra para embutir a cablagem de forma limpa, com caminhos de cabo e tomadas nos locais certos.
Quanto tempo dura uma cablagem bem feita?
Uma instalação certificada de CAT6A/fibra foi pensada para durar mais de uma década, acompanhando várias gerações de equipamento ativo.
Precisa de cablagem estruturada certificada em Lisboa?
Excelência comprovada em númerosA confiança de quem não pode pararResultados que garantem a sua tranquilidadeA solidez de um parceiro de IT de referência
0+Anos de experiência
0+Empresas
0+Projetos IT
0+Certificações IT
0+Países
0+Hotéis
0+Embaixadas
0%UpTime garantido
(function(){
function run(box){
if(box.dataset.di) return; box.dataset.di=1;
var rm=window.matchMedia&&window.matchMedia('(prefers-reduced-motion: reduce)').matches;
var vid=box.querySelector('.dr-nums-bg');
function count(){
box.querySelectorAll('.dr-nums-n').forEach(function(el){
var raw=el.getAttribute('data-to')||'0';var to=parseFloat(raw)||0;var suf=el.getAttribute('data-suf')||'';var dec=raw.indexOf('.')>=0?1:0;
if(rm){el.textContent=to.toFixed(dec)+suf;return;}
var st=null,dur=1400;
function step(t){if(!st)st=t;var p=Math.min((t-st)/dur,1);var v=to*(0.5-Math.cos(Math.PI*p)/2);el.textContent=v.toFixed(dec)+suf;if(p<1)requestAnimationFrame(step);}
requestAnimationFrame(step);
});
}
function loadVid(){
if(rm||window.innerWidth<768||!vid||vid.dataset.l)return;vid.dataset.l=1;
var w=vid.getAttribute('data-webm'),m=vid.getAttribute('data-mp4');
if(w){var s=document.createElement('source');s.src=w;s.type='video/webm';vid.appendChild(s);}
if(m){var s2=document.createElement('source');s2.src=m;s2.type='video/mp4';vid.appendChild(s2);}
vid.load();var pr=vid.play();if(pr&&pr.catch)pr.catch(function(){});
}
var io=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){count();loadVid();io.disconnect();}});},{rootMargin:'200px'});
io.observe(box);
}
document.querySelectorAll('.dr-nums').forEach(run);
document.querySelectorAll('[data-drrot]').forEach(function(rot){
var spans=rot.querySelectorAll('span'); if(!spans.length)return; spans[0].classList.add('on'); if(spans.length<2)return;
var rm=window.matchMedia&&window.matchMedia('(prefers-reduced-motion: reduce)').matches; if(rm)return;
var i=0; setInterval(function(){ spans[i].classList.remove('on'); i=(i+1)%spans.length; spans[i].classList.add('on'); },4000);
});
})();
(function(){
var m = "{\"/servicos-it/\":{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"Quanto custa um serviço de informática para empresas?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Depende do número de utilizadores e da complexidade da infraestrutura. Os planos IT Unlimited funcionam por avença mensal fixa — sem custos à hora nem surpresas. Peça uma proposta: respondemos em menos de 24 horas úteis, sem compromisso.\"}},{\"@type\":\"Question\",\"name\":\"O que inclui uma avença de informática?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Suporte helpdesk ilimitado (remoto, telefónico e no local), monitorização 24/7 de servidores e postos, manutenção preventiva, gestão de backups e segurança, deslocações incluídas e consultoria estratégica contínua.\"}},{\"@type\":\"Question\",\"name\":\"A DataRoad substitui o departamento de informática?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Sim — para a maioria dos clientes somos o departamento de IT completo. Nas empresas com equipa interna, funcionamos como extensão especializada: assumimos redes, segurança ou projetos, e a equipa interna fica liberta para o dia a dia.\"}},{\"@type\":\"Question\",\"name\":\"Em quanto tempo respondem a um pedido de suporte?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Os tempos de resposta estão garantidos por SLA contratual. O suporte remoto é atendido em minutos; as intervenções no local são agendadas segundo a prioridade do incidente — e uma paragem crítica é sempre prioridade máxima.\"}},{\"@type\":\"Question\",\"name\":\"Trabalham com empresas fora de Lisboa?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Sim. O suporte remoto cobre todo o país no imediato, e temos equipas no terreno na Grande Lisboa, Cascais, Oeiras, Setúbal e deslocações planeadas a qualquer zona.\"}}]},\"/setores/\":{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"Trabalham com o software específico do meu setor?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Trabalhamos com a infraestrutura em que ele corre — servidores, rede, postos e cópias de segurança — e coordenamos diretamente com o fabricante do software quando é preciso. Não vendemos software concorrente, por isso não temos interesse em substituí-lo.\"}},{\"@type\":\"Question\",\"name\":\"A minha atividade não está nesta lista. Não trabalham com o meu setor?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Trabalhamos. Indústria, embaixadas, universidades, escritórios de advogados e serviços profissionais fazem parte da nossa carteira. A abordagem é a mesma: perceber primeiro o negócio, desenhar depois a solução.\"}},{\"@type\":\"Question\",\"name\":\"Podem assumir a informática a meio de um contrato com outro fornecedor?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Sim. Planeamos a transição para não haver interrupções, documentamos tudo o que recebemos e, no primeiro mês, mostramos com números o que já melhorou.\"}},{\"@type\":\"Question\",\"name\":\"O preço muda conforme o setor?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"O que muda é o desenho da solução — cobertura horária, redundância, conformidade. O modelo é o mesmo: um valor mensal fixo, sem surpresas, definido depois do diagnóstico.\"}}]},\"/zonas-de-atuacao/\":{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"Cobram deslocações?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Nas zonas de presença regular, as condições de deslocação ficam definidas no contrato — sem surpresas na fatura. Fora delas, as deslocações são planeadas e orçamentadas antes, nunca cobradas à posteriori.\"}},{\"@type\":\"Question\",\"name\":\"A minha empresa tem escritórios em várias cidades. Conseguem cobrir todos?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Sim — é um dos casos onde mais fazemos diferença: um único contrato, um único SLA e uma única equipa a gerir todos os escritórios, em vez de um fornecedor diferente em cada cidade.\"}},{\"@type\":\"Question\",\"name\":\"Em quanto tempo chegam ao meu escritório?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Depende da zona e da gravidade — e é exatamente por isso que os tempos ficam por escrito no SLA antes de assinar. Na Grande Lisboa, uma paragem crítica tem resposta presencial no próprio dia.\"}},{\"@type\":\"Question\",\"name\":\"E se a empresa mudar de instalações?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Acompanhamos mudanças de escritório de ponta a ponta: planeamento, cablagem e rede no espaço novo, migração dos sistemas e arranque no primeiro dia — é um dos nossos serviços mais pedidos.\"}}]}}";
var map = JSON.parse(m);
var ld = map[location.pathname];
if (ld) { var s = document.createElement("script"); s.type = "application/ld+json"; s.textContent = JSON.stringify(ld); document.head.appendChild(s); }
})();
(function() {
// Global page view and session tracking for UAEL Modal Popup feature
try {
// Session tracking: increment if this is a new session
// Check if any popup on this page uses current page tracking
var hasCurrentPageTracking = false;
var currentPagePopups = [];
// Check all modal popups on this page for current page tracking
if (typeof jQuery !== 'undefined') {
jQuery('.uael-modal-parent-wrapper').each(function() {
var scope = jQuery(this).data('page-views-scope');
var enabled = jQuery(this).data('page-views-enabled');
var popupId = jQuery(this).attr('id').replace('-overlay', '');
if (enabled === 'yes' && scope === 'current') {
hasCurrentPageTracking = true;
currentPagePopups.push(popupId);
}
});
}
// Global tracking: ALWAYS increment if ANY popup on the site uses global tracking
// Current page tracking: increment per-page counters
if (hasCurrentPageTracking && currentPagePopups.length > 0) {
var currentUrl = window.location.href;
var urlKey = 'uael_page_views_' + btoa(currentUrl).replace(/[^a-zA-Z0-9]/g, '').substring(0, 50);
var currentPageViews = parseInt(localStorage.getItem(urlKey) || '0');
currentPageViews++;
localStorage.setItem(urlKey, currentPageViews.toString());
// Store URL mapping for each popup
for (var i = 0; i < currentPagePopups.length; i++) {
var popupUrlKey = 'uael_popup_' + currentPagePopups[i] + '_url_key';
localStorage.setItem(popupUrlKey, urlKey);
}
}
} catch (e) {
// Silently fail if localStorage is not available
}
})();
/* DR - Bloco planos IT Unlimited: normaliza o quadro nas paginas PT (fonte unica, DOM puro) */
(function(){try{
if(/^\/(en|es|fr|de)(\/|$)/.test(location.pathname)) return;
var D=[{"c":"single_pricing","t":"IT Unlimited Essential","s":"Empresas com 5 a 10 postos de trabalho","i":"A base sólida que o seu negócio precisa para não parar. O mínimo que uma empresa séria deve ter — suporte profissional, monitorização contínua e resposta garantida","f":["Suporte remoto e telefónico em horário laboral","Monitorização 24/7 com alertas automáticos","Resposta a incidentes com SLA","Gestão de atualizações patches de segurança","Helpdesk dedicado por email e telefone"],"b":"IT Unlimited Essencial","h":"/it-unlimited-essential/"},{"c":"single_pricing active","t":"IT Unlimited Premium","s":"Empresas com 20 a 100 postos de trabalho","i":"Suporte total, sem limites, sem surpresas. A informática da sua empresa inteiramente nas nossas mãos — para que o seu negócio nunca pare","f":["Suporte presencial ilimitado com deslocações incluídas","Monitorização avançada 24×7×365","Gestão completa do parque","Cibersegurança incluída (firewall, antivírus gerido)","SLA agressivo — resposta imediata incidentes críticos","Sem limite de horas","Helpdesk dedicado em horário laboral"],"b":"IT Unlimited Premium","h":"/it-unlimited-premium/"},{"c":"single_pricing","t":"IT Unlimited Premium 365","s":"Para empresas que não podem parar — nunca.","i":"O seu departamento de IT dedicado, disponível a qualquer hora, qualquer dia do ano.","f":["Tudo o que está incluído no IT Unlimited","Suporte 24h × 7 dias × 365 dias","Fins de semana e feriados incluídos","Gestor de conta técnico dedicado","Reuniões periódicas de alinhamento estratégico IT","Plano de continuidade de negócio (disaster recovery)","Acesso prioritário a projetos de rede e infraestrutura"],"b":"IT Unlimited Premium 365","h":"/it-unlimited-premium-365/"}];
var CSS=".dr-plans-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:26px;margin:0 auto;max-width:1200px}.dr-plans-grid>.single_pricing{flex:1 1 300px;max-width:380px;margin:0}";
function E(tag,cls){var e=document.createElement(tag);if(cls)e.className=cls;return e;}
function card(d){
var sp=E("div",d.c),pc=E("div","pricing_content"),top=E("div","pricing_top_bar");
var ph=E("div","pricing_head"),pt=E("div","pricing_title"),h=E("h3");h.textContent=d.t;pt.appendChild(h);ph.appendChild(pt);
var pi=E("div","price_item"),pii=E("div","price_item_inner"),pic=E("div","price_item_inner_center");
var m=E("span","monthp"),mi=E("span","month_inner"),bo=E("span","bootmp");
bo.appendChild(document.createTextNode(d.s));bo.appendChild(E("br"));bo.appendChild(E("br"));bo.appendChild(document.createTextNode(d.i));
mi.appendChild(bo);m.appendChild(mi);pic.appendChild(m);pii.appendChild(pic);pi.appendChild(pii);
top.appendChild(ph);top.appendChild(pi);
var bd=E("div","pricing_body"),ft=E("div","featur"),ul=E("ul");
d.f.forEach(function(x){var li=E("li");li.textContent=x;ul.appendChild(li);});ft.appendChild(ul);
var pb=E("div","pricing_bottom"),on=E("div","order_now"),a=E("a","singinp");a.setAttribute("href",d.h);a.textContent=d.b;on.appendChild(a);pb.appendChild(on);
bd.appendChild(ft);bd.appendChild(pb);pc.appendChild(top);pc.appendChild(bd);sp.appendChild(pc);return sp;
}
function addCSS(){if(document.getElementById("dr-plans-css"))return;var st=E("style");st.id="dr-plans-css";st.appendChild(document.createTextNode(CSS));(document.head||document.documentElement).appendChild(st);}
function run(){
if(document.querySelector(".dr-plans-wrap"))return;
var block=null;try{block=document.querySelector("section.elementor-inner-section:has(.single_pricing)");}catch(e){}
if(!block){var c=document.querySelectorAll(".single_pricing");if(c.length){block=c[0].closest("section.elementor-inner-section")||c[0].closest("section")||c[0].parentElement;}}
if(!block)return;
addCSS();
var wrap=E("div","dr-plans-wrap"),grid=E("div","dr-plans-grid");
D.forEach(function(d){grid.appendChild(card(d));});wrap.appendChild(grid);
block.parentNode.replaceChild(wrap,block);
}
if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",run);}else{run();}
setTimeout(run,700);
}catch(e){}})();
(function(){
"use strict";
/* Testemunhos: fita continua, como a barra de logotipos.
Substitui o carrossel owl por uma faixa que desliza sem parar,
com pausa quando o rato esta por cima.
Tambem descarta cartoes com texto de demonstracao do tema. */
var SEG = 7;
var DEMO = /Sorem ipsum|Lorem ipsum|consectetur adipisicing|Ellen Erye|Shane Watsan/i;
var LIM = 200;
var PAG = '/testemunhos/';
/* corta o texto do cartao num limite de frase/palavra. So afeta a apresentacao:
o testemunho completo continua guardado e aparece em /testemunhos/. */
function corta(s){
s = (s || '').replace(/\s+/g,' ').trim();
if (s.length <= LIM) return s;
var t = s.slice(0, LIM);
var p = Math.max(t.lastIndexOf('. '), t.lastIndexOf('! '), t.lastIndexOf('? '));
if (p > LIM * 0.55) return t.slice(0, p + 1);
var e = t.lastIndexOf(' ');
return (e > 0 ? t.slice(0, e) : t).replace(/[\s,;:.\u2014-]+$/,'') + '\u2026';
}
function fita(){
var caixas = document.querySelectorAll('.testimonial_list2');
if (!caixas.length) return false;
var feitos = 0;
Array.prototype.forEach.call(caixas, function(c){
if (c.getAttribute('data-dr-fita')) { feitos++; return; }
var brutos = c.querySelectorAll('.owl-item:not(.cloned) .single_testimonial');
if (!brutos.length) brutos = c.querySelectorAll('.single_testimonial');
var itens = [];
Array.prototype.forEach.call(brutos, function(x){
if (!DEMO.test(x.textContent || '')) itens.push(x);
});
if (itens.length < 2) return;
var html = '';
itens.forEach(function(x){
var k = x.cloneNode(true);
var tx = k.querySelector('.testi_text');
if (tx) tx.textContent = corta(tx.textContent);
var a = document.createElement('a');
a.className = 'dr-mq-link';
a.href = PAG;
a.setAttribute('aria-label', 'Ler todos os testemunhos de clientes da DataRoad');
a.appendChild(k);
html += a.outerHTML;
});
if (window.jQuery) {
try { window.jQuery(c).trigger('destroy.owl.carousel'); } catch(e){}
}
c.setAttribute('data-dr-fita','1');
c.className = c.className.replace(/\bowl-\S+/g,'') + ' dr-marquee';
c.innerHTML = '<div class="dr-mq-track">' + html + html + '</div>';
var t = c.querySelector('.dr-mq-track');
if (t) t.style.animationDuration = (itens.length * SEG) + 's';
if (!c.parentNode.querySelector('.dr-mq-mais')) {
var mais = document.createElement('div');
mais.className = 'dr-mq-mais';
var b = document.createElement('a');
b.className = 'dr-mq-b';
b.href = PAG;
b.textContent = 'Ver todos os testemunhos';
mais.appendChild(b);
c.parentNode.insertBefore(mais, c.nextSibling);
}
feitos++;
});
return feitos === caixas.length;
}
function tenta(n){
if (fita()) return;
if (n <= 0) return;
setTimeout(function(){ tenta(n-1); }, 500);
}
if (document.readyState === 'complete') { tenta(24); }
else { window.addEventListener('load', function(){ tenta(24); }); }
})();
/* ---- Casos de estudo: carrossel ---- */
(function(){
var GAP = 22;
function anima(el,destino,ms){
if(el.__drAnim){ cancelAnimationFrame(el.__drAnim); }
var ini=el.scrollLeft, d=destino-ini, t0=null;
if(Math.abs(d)<2){ el.scrollLeft=destino; return; }
function passo(t){
if(t0===null){t0=t;}
var k=Math.min(1,(t-t0)/ms);
var e=k<0.5?2*k*k:1-Math.pow(-2*k+2,2)/2;
el.scrollLeft=ini+d*e;
if(k<1){ el.__drAnim=requestAnimationFrame(passo); } else { el.__drAnim=null; }
}
el.__drAnim=requestAnimationFrame(passo);
}
function svg(d){return '<svg viewBox="0 0 24 24"><path d="'+d+'"></path></svg>';}
function init(c){
if(c.getAttribute("data-dr-carrossel")) return;
var g=c.querySelector(".dr-casos-g"); if(!g) return;
var cards=g.querySelectorAll(".dr-caso"); if(cards.length<3) return;
c.setAttribute("data-dr-carrossel","1");
var a=document.createElement("button"); a.type="button"; a.className="dr-casos-nav dr-casos-nav-a"; a.setAttribute("aria-label","Casos anteriores"); a.innerHTML=svg("M15 19 8 12l7-7");
var p=document.createElement("button"); p.type="button"; p.className="dr-casos-nav dr-casos-nav-p"; p.setAttribute("aria-label","Casos seguintes"); p.innerHTML=svg("M9 5l7 7-7 7");
c.appendChild(a); c.appendChild(p);
function passo(){ var r=cards[0].getBoundingClientRect(); return Math.round(r.width)+GAP; }
function fim(){ return g.scrollWidth - g.clientWidth - 6; }
function estado(){ a.disabled = g.scrollLeft < 6; p.disabled = g.scrollLeft > fim(); }
a.addEventListener("click",function(){ anima(g, g.scrollLeft-passo(), 450); });
p.addEventListener("click",function(){ anima(g, g.scrollLeft+passo(), 450); });
g.addEventListener("scroll",estado,{passive:true});
window.addEventListener("resize",estado); estado();
if(window.matchMedia && window.matchMedia("(prefers-reduced-motion: reduce)").matches) return;
var pausaAte=0;
function adiar(){ pausaAte=Date.now()+9000; }
["touchstart","pointerdown","keydown"].forEach(function(e){ c.addEventListener(e,adiar,{passive:true}); });
setInterval(function(){
if(document.hidden) return;
if(Date.now()<pausaAte) return;
try{ if(c.matches(":hover")) return; }catch(e){}
var r=c.getBoundingClientRect();
if(r.bottom<60||r.top>window.innerHeight-60) return;
if(g.scrollLeft>=fim()){ anima(g, 0, 700); }
else { anima(g, g.scrollLeft+passo(), 450); }
},4500);
}
function go(){ Array.prototype.forEach.call(document.querySelectorAll(".dr-casos"), init); }
if(document.readyState==="loading"){ document.addEventListener("DOMContentLoaded",go); } else { go(); }
setTimeout(go,1200);
})();
/* DataRoad - Formulario de contacto: correcoes */
(function(){
/* 1) Impedir que o Cloudflare Turnstile faca scroll ate ao formulario ao carregar a pagina */
try{
var nav = performance.getEntriesByType ? performance.getEntriesByType('navigation')[0] : null;
var fresh = !location.hash && (!nav || nav.type === 'navigate');
if (fresh && document.querySelector('.wpcf7-turnstile')) {
var acted = false;
var mark = function(){ acted = true; };
['wheel','touchstart','keydown','mousedown'].forEach(function(ev){
window.addEventListener(ev, mark, {passive:true, capture:true});
});
var t0 = Date.now();
var guard = setInterval(function(){
if (Date.now() - t0 > 6000) { clearInterval(guard); return; }
if (!acted && window.scrollY > 400) { window.scrollTo(0, 0); }
}, 120);
}
}catch(e){}
/* 2) Preencher o campo oculto "assunto" com a pagina de origem quando nao vem no URL */
var fill = function(){
var inputs = document.querySelectorAll('form.wpcf7-form input[name="assunto"]');
for (var i=0;i<inputs.length;i++){
if (!inputs[i].value) {
var t = document.title.split('|')[0].split('\u2014')[0].trim();
inputs[i].value = ('Pedido via: ' + t).slice(0, 140);
}
}
};
if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', fill); } else { fill(); }
})();
/* ---- Anti-salto: a pagina nao deve abrir no formulario ----
Alguns componentes (Turnstile, campos com foco automatico) fazem o
navegador saltar para o fundo assim que carregam. Nos primeiros
segundos, e enquanto o visitante nao interagir, repomos o topo.
Links com ancora (#seccao) continuam a funcionar. */
(function(){
if (location.hash) return;
var interagiu = false;
['wheel','touchstart','keydown','mousedown','pointerdown'].forEach(function(ev){
window.addEventListener(ev, function(){ interagiu = true; }, {passive:true, once:true});
});
var fim = Date.now() + 5000;
function vigia(){
if (interagiu || Date.now() > fim) return;
if (window.scrollY > 150) {
window.scrollTo(0, 0);
}
requestAnimationFrame(vigia);
}
requestAnimationFrame(vigia);
})();
(function(){
var TEL='tel:+351211459950', TELTXT='Ligar 211 459 950';
var PAGCONTACTO='/empresa-servicos-informatica/';
function mob(){ return window.matchMedia('(max-width:767px)').matches; }
function sec(id){ return document.querySelector('.elementor-element-'+id); }
function alvoProposta(){ return document.getElementById('dr-form') ? '#dr-form' : PAGCONTACTO; }
function marcarForm(){
var f=sec('193b4924'); if(f && !f.id) f.id='dr-form';
}
function barra(){
if(document.getElementById('dr-bar')) return;
var b=document.createElement('div'); b.id='dr-bar';
b.innerHTML='<a class="call" href="'+TEL+'" aria-label="Telefonar para a DataRoad">Ligar agora</a>'+
'<a class="prop" href="'+alvoProposta()+'">Pedir proposta</a>';
document.body.appendChild(b);
document.body.classList.add('dr-bar-on');
}
function hero(){
if(!document.body.classList.contains('home')) return;
if(document.getElementById('dr-hero')) return;
var root=document.querySelector('[data-elementor-type="wp-page"]'); if(!root) return;
var h=document.createElement('section'); h.id='dr-hero';
h.innerHTML='<p class="k">MSP · Suporte IT 24/7 · Portugal</p>'+
'<h1>Assistência informática e <em>IT gerido 24/7</em> para empresas</h1>'+
'<p class="s">Suporte ilimitado, redes, cibersegurança e monitorização proativa. Resolvemos os problemas antes de pararem o seu negócio.</p>'+
'<div class="btns"><a class="b1" href="'+TEL+'">'+TELTXT+'</a>'+
'<a class="b2" href="'+alvoProposta()+'">Pedir proposta gratuita</a></div>'+
'<ul class="tr"><li>11+ anos</li><li>232+ empresas</li><li>99,9% uptime</li></ul>';
root.insertBefore(h,root.firstChild);
var esc=document.querySelector('body > h1'); if(esc) esc.remove();
}
function numeros(){
if(!document.body.classList.contains('home')) return;
if(document.getElementById('dr-nums')) return;
var s=sec('7d0a50e'); if(!s) return;
var n=document.createElement('div'); n.id='dr-nums';
n.innerHTML='<div><b>232+</b><span>Empresas apoiadas</span></div>'+
'<div><b>134+</b><span>Projetos IT</span></div>'+
'<div><b>99,9%</b><span>Uptime garantido</span></div>'+
'<div><b>24/7</b><span>Monitorização 365 dias</span></div>';
s.parentNode.insertBefore(n,s);
}
function porque(){
if(!document.body.classList.contains('home')) return;
if(document.getElementById('dr-porque')) return;
var s=sec('167d2b2b')||sec('7d0a50e'); if(!s) return;
var d=document.createElement('section'); d.id='dr-porque';
d.innerHTML='<p class="k">Porquê a DataRoad</p>'+
'<h2>Um parceiro de IT que a sua empresa não tem de gerir</h2>'+
'<p class="s">Excelência técnica, certificações e experiência comprovada em ambientes empresariais exigentes.</p>'+
'<ul>'+
'<li><b>Suporte local, remoto e telefónico</b><span>Assistência informática imediata, 24/7, 365 dias por ano.</span></li>'+
'<li><b>Equipa certificada</b><span>Técnicos com certificações reconhecidas e anos de experiência em empresas exigentes.</span></li>'+
'<li><b>Gestão total da sua área informática</b><span>Postos de trabalho, servidores, redes e cibersegurança — tudo num só parceiro.</span></li>'+
'<li><b>Valor mensal fixo, sem surpresas</b><span>Avença transparente com SLA definido e monitorização proativa incluída.</span></li>'+
'</ul>'+
'<a class="cta" href="'+alvoProposta()+'">Pedir proposta sem compromisso</a>';
s.parentNode.insertBefore(d,s.nextSibling);
}
var COLAPSAR=['cf67b85','429af41','29c4af4','53f750be'];
function colapsaveis(){
COLAPSAR.forEach(function(id){
var s=sec(id); if(!s||s.dataset.drCol) return;
if(s.offsetHeight<420) return;
s.dataset.drCol='1';
s.classList.add('dr-col','dr-fechado');
var b=document.createElement('button');
b.type='button'; b.className='dr-vermais'; b.textContent='Ler mais';
b.setAttribute('aria-expanded','false');
b.addEventListener('click',function(){
var f=s.classList.toggle('dr-fechado');
b.textContent=f?'Ler mais':'Ler menos';
b.setAttribute('aria-expanded',f?'false':'true');
if(f) s.scrollIntoView({behavior:'smooth',block:'start'});
});
s.parentNode.insertBefore(b,s.nextSibling);
});
}
function servicos(){
var s=sec('7d0a50e'); if(!s||s.dataset.drExp) return;
var cards=[].slice.call(s.querySelectorAll('.elementor-widget-service'));
if(cards.length<6) return;
s.dataset.drExp='1';
var esconder=cards.slice(4);
function fechar(){
esconder.forEach(function(c){ (c.closest('.elementor-inner-column')||c).classList.add('dr-oculto'); });
[].forEach.call(s.querySelectorAll('.elementor-inner-section'),function(x){
if(!x.querySelectorAll('.elementor-inner-column:not(.dr-oculto)').length) x.classList.add('dr-oculto'); });
}
fechar();
var b=document.createElement('button');
b.type='button'; b.className='dr-vermais';
b.textContent='Ver todos os serviços ('+cards.length+')';
b.setAttribute('aria-expanded','false');
b.addEventListener('click',function(){
if(s.querySelectorAll('.dr-oculto').length){
[].forEach.call(s.querySelectorAll('.dr-oculto'),function(e){e.classList.remove('dr-oculto');});
b.textContent='Ver menos'; b.setAttribute('aria-expanded','true');
} else {
fechar(); b.textContent='Ver todos os serviços ('+cards.length+')';
b.setAttribute('aria-expanded','false');
s.scrollIntoView({behavior:'smooth',block:'start'});
}
});
s.appendChild(b);
}
var SERVICOS=[
['Contrato IT Unlimited 24x7','Avença com assistência ilimitada: local, remota e telefónica.','/servicos-informatica-a-empresas-lisboa/'],
['Helpdesk / Service Desk','Suporte ao utilizador em Windows e macOS, com resposta rápida.','/empresa-informatica-it/'],
['Cablagem e redes estruturadas','Instalação, certificação e gestão de redes de dados.','/redes-cablagem-informatica/'],
['Redes wireless empresariais','WiFi de alta densidade para escritórios, hotéis e clínicas.','/redes-wireless-instalacao/'],
['Firewalls e acessos remotos','Firewall, VPN e redundância de internet para trabalhar seguro.','/firewalls-seguranca-informatica/'],
['Microsoft 365 e cloud','Migração, licenciamento e trabalho remoto em cloud.','/office-365-cloud/'],
['Consultoria informática','Levantamento de necessidades e desenho da solução certa.','/servicos-informatica-empresas/'],
['Backups e cibersegurança','Cópias de segurança testadas e proteção de servidores e postos.','/backups-solucoes-de-backup/'],
['IT Outsourcing','O departamento de IT completo por avença mensal fixa.','/it-outsourcing-portugal/'],
['Cibersegurança gerida','Proteção em camadas: firewalls, postos, email e backups.','/ciberseguranca-empresas/'],
['Suporte & sistema de tickets','Prioridades, SLA e portal de clientes 24/7 — do pedido à resolução.','/suporte-informatico-empresas/'],
['Mudar de empresa de IT','Transição de fornecedor sem paragens e sem fidelização.','/mudar-de-empresa-de-informatica/']
];
var SETORES=[
['Hotelaria','/informatica-para-hotelaria/'],
['Clínicas e saúde','/informatica-para-clinicas/'],
['Setor público','/informatica-setor-publico/'],
['Escritórios e multinacionais','/informatica-para-escritorios-e-multinacionais/']
];
var FAQ=[
['O que inclui o contrato IT Unlimited?','Assistência ilimitada — local, remota e telefónica —, gestão de postos de trabalho, servidores e redes, e monitorização proativa 24/7, por um valor mensal fixo.'],
['Trabalham com empresas de que dimensão?','Desde escritórios com poucos postos a hotéis, clínicas e organismos públicos com centenas de utilizadores. A avença é dimensionada ao número de postos e servidores.'],
['Em que zonas do país intervêm?','Assistência presencial em Lisboa, Cascais, Oeiras, Setúbal, Barreiro, Porto, Beja e Faro/Algarve, com suporte remoto e telefónico em todo o país.'],
['Como começa o processo?','Com um diagnóstico sem compromisso: analisamos a infraestrutura atual e apresentamos uma proposta com âmbito, SLA e valor mensal.']
];
function listaServicos(){
if(!document.body.classList.contains('home')) return;
if(document.getElementById('dr-servicos')) return;
var s=sec('7d0a50e'); if(!s) return;
var d=document.createElement('section'); d.id='dr-servicos';
var itens=SERVICOS.map(function(x){
return '<li><a href="'+x[2]+'"><div><b>'+x[0]+'</b><span>'+x[1]+'</span></div><i></i></a></li>';}).join('');
d.innerHTML='<p class="k">Sobre a DataRoad</p>'+
'<h2>Assistência informática e IT gerido para empresas</h2>'+
'<p class="s">A sua empresa não pode parar — e o seu IT também não. Equipa técnica certificada, pronta a resolver antes que afete o negócio.</p>'+
'<ul>'+itens+'</ul>';
s.parentNode.insertBefore(d,s);
}
function setores(){
if(!document.body.classList.contains('home')) return;
if(document.getElementById('dr-setores')) return;
var ref=document.getElementById('dr-servicos'); if(!ref) return;
var d=document.createElement('section'); d.id='dr-setores';
d.innerHTML='<h2>Setores que servimos</h2><p>Soluções desenhadas para as exigências de cada atividade.</p>'+
'<div class="chips">'+SETORES.map(function(x){return '<a href="'+x[1]+'">'+x[0]+'</a>';}).join('')+'</div>';
ref.parentNode.insertBefore(d,ref.nextSibling);
}
function faq(){
if(!document.body.classList.contains('home')) return;
if(document.getElementById('dr-faq')) return;
var ref=document.getElementById('dr-porque'); if(!ref) return;
var d=document.createElement('section'); d.id='dr-faq';
d.innerHTML='<h2>Perguntas frequentes</h2>'+FAQ.map(function(x){
return '<details><summary>'+x[0]+'</summary><p>'+x[1]+'</p></details>';}).join('');
ref.parentNode.insertBefore(d,ref.nextSibling);
}
function raiz(){ return document.querySelector('[data-elementor-type="wp-page"]')||document.querySelector('[data-elementor-type="single-post"]'); }
function topo(el,r){ var e=el; while(e&&e.parentElement!==r) e=e.parentElement; return e; }
function semTestemunhos(){
var r=raiz(); if(!r) return;
[].forEach.call(document.querySelectorAll('.elementor-widget-testimonial'),function(w){
var t=topo(w,r); if(t) t.classList.add('dr-oculto');
});
}
function semDuplicados(){
var r=raiz(); if(!r) return; var vistos={};
[].forEach.call(r.children,function(s){
var t=(s.innerText||'').trim().replace(/\s+/g,' ').slice(0,120);
if(t.length<80) return;
if(vistos[t]) s.classList.add('dr-oculto'); else vistos[t]=1;
});
}
function colapsarLongos(){
[].forEach.call(document.querySelectorAll('.elementor-widget-text-editor'),function(w){
if(w.dataset.drCol) return;
if(w.closest('.dr-oculto')||!w.offsetHeight) return;
if(w.offsetHeight<1200) return;
w.dataset.drCol='1';
w.classList.add('dr-col','dr-fechado');
var b=document.createElement('button');
b.type='button'; b.className='dr-vermais'; b.textContent='Ler mais';
b.setAttribute('aria-expanded','false');
b.addEventListener('click',function(){
var f=w.classList.toggle('dr-fechado');
b.textContent=f?'Ler mais':'Ler menos';
b.setAttribute('aria-expanded',f?'false':'true');
if(f) w.scrollIntoView({behavior:'smooth',block:'start'});
});
w.parentNode.insertBefore(b,w.nextSibling);
});
}
function gradesDeServicos(){
var r=raiz(); if(!r) return;
var secs=[];
[].forEach.call(document.querySelectorAll('.elementor-widget-service'),function(w){
var t=topo(w,r); if(t && secs.indexOf(t)<0) secs.push(t);
});
secs.forEach(function(s){
if(s.dataset.drGrade || s.classList.contains('dr-oculto') || !s.offsetHeight) return;
var cards=[].slice.call(s.querySelectorAll('.elementor-widget-service'));
if(cards.length<6) return;
s.dataset.drGrade='1';
var esconder=cards.slice(4);
function fechar(){
esconder.forEach(function(c){ (c.closest('.elementor-inner-column')||c.closest('.e-con')||c).classList.add('dr-oculto'); });
[].forEach.call(s.querySelectorAll('.elementor-inner-section'),function(x){
if(!x.querySelectorAll('.elementor-inner-column:not(.dr-oculto)').length) x.classList.add('dr-oculto'); });
}
fechar();
var b=document.createElement('button');
b.type='button'; b.className='dr-vermais';
b.textContent='Ver todos os serviços ('+cards.length+')';
b.setAttribute('aria-expanded','false');
b.addEventListener('click',function(){
if(s.querySelectorAll('.dr-oculto').length){
[].forEach.call(s.querySelectorAll('.dr-oculto'),function(e){e.classList.remove('dr-oculto');});
b.textContent='Ver menos'; b.setAttribute('aria-expanded','true');
} else { fechar(); b.textContent='Ver todos os serviços ('+cards.length+')';
b.setAttribute('aria-expanded','false'); s.scrollIntoView({behavior:'smooth',block:'start'}); }
});
s.appendChild(b);
});
}
function noticias(){
if(!document.body.classList.contains('home')) return;
if(document.getElementById('dr-noticias')) return;
var c=sec('622bfc0b'); if(!c) return;
var itens=[].slice.call(c.querySelectorAll('.grid-item')).slice(0,4).map(function(g){
var a=g.querySelector('.post-title a')||g.querySelector('h2 a');
if(!a) return null;
var cat=g.querySelector('.post-category-list'), dt=g.querySelector('.meta-date');
return {h:a.getAttribute('href'), t:a.textContent.trim(),
c:cat?cat.textContent.trim():'', d:dt?dt.textContent.trim():''};
}).filter(Boolean);
if(!itens.length) return;
var btn=document.querySelector('.elementor-element-cefb189 a[href]');
var todos=btn?btn.getAttribute('href'):'/casos-de-estudo/';
var d=document.createElement('section'); d.id='dr-noticias';
d.innerHTML='<p class="k">Casos de estudo</p>'+
'<h2>Projetos recentes da DataRoad</h2>'+
'<p class="s">Redes, WiFi, seguran\u00e7a e contratos de suporte em empresas, hot\u00e9is, cl\u00ednicas e organismos p\u00fablicos.</p>'+
'<ul>'+itens.map(function(x){return '<li><a href="'+x.h+'">'+
(x.c?'<span class="cat">'+x.c+'</span>':'')+
'<span class="tit">'+x.t+'</span>'+
(x.d?'<span class="dt">'+x.d+'</span>':'')+'</a></li>';}).join('')+'</ul>'+
'<a class="todos" href="'+todos+'">Ver todos os projetos</a>';
c.parentNode.insertBefore(d,c);
}
function tablet(){ return window.matchMedia("(max-width:1024px)").matches; }
function init(){
if(!tablet()) return;
marcarForm(); barra();
if(!mob()) return;
semTestemunhos(); semDuplicados(); hero(); numeros(); listaServicos(); setores(); porque(); faq(); noticias(); gradesDeServicos(); colapsaveis(); colapsarLongos();
}
if(document.readyState==='loading') document.addEventListener('DOMContentLoaded',init); else init();
window.addEventListener('load',init);
})();
/* ================= EN: traducao da experiencia mobile ================= */
(function(){
var DIC={
/* hero */
"MSP · Suporte IT 24/7 · Portugal":"MSP · 24/7 IT Support · Portugal",
"Assistência informática e":"Managed IT support and",
"IT gerido 24/7":"24/7 IT services",
"para empresas":"for businesses",
"Suporte ilimitado, redes, cibersegurança e monitorização proativa. Resolvemos os problemas antes de pararem o seu negócio.":"Unlimited support, networks, cybersecurity and proactive monitoring. We solve problems before they stop your business.",
"Ligar 211 459 950":"Call 211 459 950",
"Pedir proposta gratuita":"Get a free quote",
"11+ anos":"11+ years",
"232+ empresas":"232+ companies",
"99,9% uptime":"99.9% uptime",
"Telefonar para a DataRoad":"Call DataRoad",
/* numeros */
"Empresas apoiadas":"Companies supported",
"Projetos IT":"IT projects",
"99,9%":"99.9%",
"Uptime garantido":"Guaranteed uptime",
"Monitorização 365 dias":"Monitoring 365 days a year",
/* servicos */
"Sobre a DataRoad":"About DataRoad",
"Assistência informática e IT gerido para empresas":"Managed IT support and IT services for businesses",
"A sua empresa não pode parar — e o seu IT também não. Equipa técnica certificada, pronta a resolver antes que afete o negócio.":"Your business cannot stop — and neither can your IT. A certified technical team, ready to fix issues before they affect the business.",
"Contrato IT Unlimited 24x7":"IT Unlimited contract 24x7",
"Avença com assistência ilimitada: local, remota e telefónica.":"Fixed monthly fee with unlimited support: on-site, remote and by phone.",
"Suporte ao utilizador em Windows e macOS, com resposta rápida.":"Fast end-user support on Windows and macOS.",
"Cablagem e redes estruturadas":"Cabling and structured networks",
"Instalação, certificação e gestão de redes de dados.":"Installation, certification and management of data networks.",
"Redes wireless empresariais":"Business wireless networks",
"WiFi de alta densidade para escritórios, hotéis e clínicas.":"High-density WiFi for offices, hotels and clinics.",
"Firewalls e acessos remotos":"Firewalls and remote access",
"Firewall, VPN e redundância de internet para trabalhar seguro.":"Firewall, VPN and internet redundancy so your team can work securely.",
"Microsoft 365 e cloud":"Microsoft 365 and cloud",
"Migração, licenciamento e trabalho remoto em cloud.":"Migration, licensing and remote work in the cloud.",
"Consultoria informática":"IT consulting",
"Levantamento de necessidades e desenho da solução certa.":"Needs assessment and design of the right solution.",
"Backups e cibersegurança":"Backups and cybersecurity",
"Cópias de segurança testadas e proteção de servidores e postos.":"Tested backups and protection for servers and workstations.",
/* setores */
"Setores que servimos":"Sectors we serve",
"Soluções desenhadas para as exigências de cada atividade.":"Solutions designed for the demands of each industry.",
"Hotelaria":"Hospitality",
"Clínicas e saúde":"Clinics and healthcare",
"Setor público":"Public sector",
"Escritórios e multinacionais":"Offices and multinationals",
/* porque */
"Porquê a DataRoad":"Why DataRoad",
"Um parceiro de IT que a sua empresa não tem de gerir":"An IT partner your business does not have to manage",
"Excelência técnica, certificações e experiência comprovada em ambientes empresariais exigentes.":"Technical excellence, certifications and proven experience in demanding business environments.",
"Suporte local, remoto e telefónico":"On-site, remote and phone support",
"Assistência informática imediata, 24/7, 365 dias por ano.":"Immediate IT support, 24/7, 365 days a year.",
"Equipa certificada":"Certified team",
"Técnicos com certificações reconhecidas e anos de experiência em empresas exigentes.":"Technicians with recognised certifications and years of experience in demanding companies.",
"Gestão total da sua área informática":"Complete management of your IT",
"Postos de trabalho, servidores, redes e cibersegurança — tudo num só parceiro.":"Workstations, servers, networks and cybersecurity — all with a single partner.",
"Valor mensal fixo, sem surpresas":"Fixed monthly fee, no surprises",
"Avença transparente com SLA definido e monitorização proativa incluída.":"A transparent monthly fee with a defined SLA and proactive monitoring included.",
"Pedir proposta sem compromisso":"Request a no-obligation quote",
/* faq */
"Perguntas frequentes":"Frequently asked questions",
"O que inclui o contrato IT Unlimited?":"What does the IT Unlimited contract include?",
"Assistência ilimitada — local, remota e telefónica —, gestão de postos de trabalho, servidores e redes, e monitorização proativa 24/7, por um valor mensal fixo.":"Unlimited support — on-site, remote and by phone — management of workstations, servers and networks, and proactive 24/7 monitoring, for a fixed monthly fee.",
"Trabalham com empresas de que dimensão?":"What size of company do you work with?",
"Desde escritórios com poucos postos a hotéis, clínicas e organismos públicos com centenas de utilizadores. A avença é dimensionada ao número de postos e servidores.":"From offices with a handful of workstations to hotels, clinics and public bodies with hundreds of users. The monthly fee is sized to the number of workstations and servers.",
"Em que zonas do país intervêm?":"Which areas of the country do you cover?",
"Assistência presencial em Lisboa, Cascais, Oeiras, Setúbal, Barreiro, Porto, Beja e Faro/Algarve, com suporte remoto e telefónico em todo o país.":"On-site support in Lisbon, Cascais, Oeiras, Setúbal, Barreiro, Porto, Beja and Faro/Algarve, with remote and phone support across the country.",
"Como começa o processo?":"How does the process start?",
"Com um diagnóstico sem compromisso: analisamos a infraestrutura atual e apresentamos uma proposta com âmbito, SLA e valor mensal.":"With a no-obligation assessment: we review your current infrastructure and present a proposal with scope, SLA and monthly fee.",
/* noticias */
"As nossas últimas notícias":"Our latest news",
"As Nossas Últimas Notícias":"Our Latest News",
"Ver todas as notícias":"See all news",
/* barra e colapsaveis */
"Ligar agora":"Call now",
"Pedir proposta":"Get a quote",
"Ler mais":"Read more",
"Ver mais":"Show more",
"Ver menos":"Show less"
};
var DIC_ES={
"MSP · Suporte IT 24/7 · Portugal":"MSP · Soporte TI 24/7 · Portugal",
"Assistência informática e":"Asistencia informática y",
"IT gerido 24/7":"TI gestionado 24/7",
"para empresas":"para empresas",
"Suporte ilimitado, redes, cibersegurança e monitorização proativa. Resolvemos os problemas antes de pararem o seu negócio.":"Soporte ilimitado, redes, ciberseguridad y monitorización proactiva. Resolvemos los problemas antes de que detengan su negocio.",
"Ligar 211 459 950":"Llamar al 211 459 950",
"Pedir proposta gratuita":"Solicitar un presupuesto gratuito",
"11+ anos":"11+ años",
"232+ empresas":"232+ empresas",
"99,9% uptime":"99,9% de disponibilidad",
"Telefonar para a DataRoad":"Llamar a DataRoad",
"Empresas apoiadas":"Empresas atendidas",
"Projetos IT":"Proyectos TI",
"99,9%":"99,9%",
"Uptime garantido":"Disponibilidad garantizada",
"Monitorização 365 dias":"Monitorización 365 días",
"Sobre a DataRoad":"Sobre DataRoad",
"Assistência informática e IT gerido para empresas":"Asistencia informática y TI gestionado para empresas",
"A sua empresa não pode parar — e o seu IT também não. Equipa técnica certificada, pronta a resolver antes que afete o negócio.":"Su empresa no puede parar — y su TI tampoco. Equipo técnico certificado, listo para resolver antes de que afecte al negocio.",
"Contrato IT Unlimited 24x7":"Contrato IT Unlimited 24x7",
"Avença com assistência ilimitada: local, remota e telefónica.":"Cuota mensual con asistencia ilimitada: presencial, remota y telefónica.",
"Suporte ao utilizador em Windows e macOS, com resposta rápida.":"Soporte al usuario en Windows y macOS, con respuesta rápida.",
"Cablagem e redes estruturadas":"Cableado y redes estructuradas",
"Instalação, certificação e gestão de redes de dados.":"Instalación, certificación y gestión de redes de datos.",
"Redes wireless empresariais":"Redes wifi empresariales",
"WiFi de alta densidade para escritórios, hotéis e clínicas.":"WiFi de alta densidad para oficinas, hoteles y clínicas.",
"Firewalls e acessos remotos":"Firewalls y accesos remotos",
"Firewall, VPN e redundância de internet para trabalhar seguro.":"Firewall, VPN y redundancia de internet para trabajar con seguridad.",
"Microsoft 365 e cloud":"Microsoft 365 y cloud",
"Migração, licenciamento e trabalho remoto em cloud.":"Migración, licencias y trabajo remoto en la nube.",
"Consultoria informática":"Consultoría informática",
"Levantamento de necessidades e desenho da solução certa.":"Análisis de necesidades y diseño de la solución adecuada.",
"Backups e cibersegurança":"Backups y ciberseguridad",
"Cópias de segurança testadas e proteção de servidores e postos.":"Copias de seguridad probadas y protección de servidores y puestos.",
"Setores que servimos":"Sectores a los que servimos",
"Soluções desenhadas para as exigências de cada atividade.":"Soluciones diseñadas para las exigencias de cada actividad.",
"Hotelaria":"Hostelería",
"Clínicas e saúde":"Clínicas y salud",
"Setor público":"Sector público",
"Escritórios e multinacionais":"Oficinas y multinacionales",
"Porquê a DataRoad":"Por qué DataRoad",
"Um parceiro de IT que a sua empresa não tem de gerir":"Un socio de TI que su empresa no tiene que gestionar",
"Excelência técnica, certificações e experiência comprovada em ambientes empresariais exigentes.":"Excelencia técnica, certificaciones y experiencia contrastada en entornos empresariales exigentes.",
"Suporte local, remoto e telefónico":"Soporte presencial, remoto y telefónico",
"Assistência informática imediata, 24/7, 365 dias por ano.":"Asistencia informática inmediata, 24/7, 365 días al año.",
"Equipa certificada":"Equipo certificado",
"Técnicos com certificações reconhecidas e anos de experiência em empresas exigentes.":"Técnicos con certificaciones reconocidas y años de experiencia en empresas exigentes.",
"Gestão total da sua área informática":"Gestión total de su área informática",
"Postos de trabalho, servidores, redes e cibersegurança — tudo num só parceiro.":"Puestos de trabajo, servidores, redes y ciberseguridad — todo con un único socio.",
"Valor mensal fixo, sem surpresas":"Cuota mensual fija, sin sorpresas",
"Avença transparente com SLA definido e monitorização proativa incluída.":"Cuota transparente con SLA definido y monitorización proactiva incluida.",
"Pedir proposta sem compromisso":"Solicitar presupuesto sin compromiso",
"Perguntas frequentes":"Preguntas frecuentes",
"O que inclui o contrato IT Unlimited?":"¿Qué incluye el contrato IT Unlimited?",
"Assistência ilimitada — local, remota e telefónica —, gestão de postos de trabalho, servidores e redes, e monitorização proativa 24/7, por um valor mensal fixo.":"Asistencia ilimitada — presencial, remota y telefónica —, gestión de puestos de trabajo, servidores y redes, y monitorización proactiva 24/7, por una cuota mensual fija.",
"Trabalham com empresas de que dimensão?":"¿Con empresas de qué tamaño trabajan?",
"Desde escritórios com poucos postos a hotéis, clínicas e organismos públicos com centenas de utilizadores. A avença é dimensionada ao número de postos e servidores.":"Desde oficinas con pocos puestos hasta hoteles, clínicas y organismos públicos con cientos de usuarios. La cuota se dimensiona según el número de puestos y servidores.",
"Em que zonas do país intervêm?":"¿En qué zonas del país intervienen?",
"Assistência presencial em Lisboa, Cascais, Oeiras, Setúbal, Barreiro, Porto, Beja e Faro/Algarve, com suporte remoto e telefónico em todo o país.":"Asistencia presencial en Lisboa, Cascais, Oeiras, Setúbal, Barreiro, Oporto, Beja y Faro/Algarve, con soporte remoto y telefónico en todo el país.",
"Como começa o processo?":"¿Cómo empieza el proceso?",
"Com um diagnóstico sem compromisso: analisamos a infraestrutura atual e apresentamos uma proposta com âmbito, SLA e valor mensal.":"Con un diagnóstico sin compromiso: analizamos la infraestructura actual y presentamos una propuesta con alcance, SLA e importe mensual.",
"As nossas últimas notícias":"Nuestras últimas noticias",
"As Nossas Últimas Notícias":"Nuestras Últimas Noticias",
"Ver todas as notícias":"Ver todas las noticias",
"Ligar agora":"Llamar ahora",
"Pedir proposta":"Solicitar presupuesto",
"Ler mais":"Leer más",
"Ver mais":"Ver más",
"Ver menos":"Ver menos"
};
var DIC_FR={
"MSP · Suporte IT 24/7 · Portugal":"MSP · Assistance informatique 24h/24 et 7j/7 · Portugal",
"Assistência informática e":"Assistance informatique et",
"IT gerido 24/7":"informatique gérée 24h/24 et 7j/7",
"para empresas":"pour les entreprises",
"Suporte ilimitado, redes, cibersegurança e monitorização proativa. Resolvemos os problemas antes de pararem o seu negócio.":"Support illimité, réseaux, cybersécurité et surveillance proactive. Nous résolvons les problèmes avant qu'ils n'arrêtent votre entreprise.",
"Ligar 211 459 950":"Appeler le 211 459 950",
"Pedir proposta gratuita":"Demander un devis gratuit",
"11+ anos":"11+ ans",
"232+ empresas":"232+ entreprises",
"99,9% uptime":"99,9% de disponibilité",
"Telefonar para a DataRoad":"Appeler DataRoad",
"Empresas apoiadas":"Entreprises accompagnées",
"Projetos IT":"Projets informatiques",
"99,9%":"99,9%",
"Uptime garantido":"Disponibilité garantie",
"Monitorização 365 dias":"Surveillance 365 jours par an",
"Sobre a DataRoad":"À propos de DataRoad",
"Assistência informática e IT gerido para empresas":"Assistance informatique et informatique gérée pour les entreprises",
"A sua empresa não pode parar — e o seu IT também não. Equipa técnica certificada, pronta a resolver antes que afete o negócio.":"Votre entreprise ne peut pas s'arrêter — votre informatique non plus. Une équipe technique certifiée, prête à intervenir avant que cela n'affecte votre activité.",
"Contrato IT Unlimited 24x7":"Contrat IT Unlimited 24x7",
"Avença com assistência ilimitada: local, remota e telefónica.":"Forfait mensuel avec assistance illimitée : sur site, à distance et par téléphone.",
"Suporte ao utilizador em Windows e macOS, com resposta rápida.":"Support utilisateur sous Windows et macOS, avec une réponse rapide.",
"Cablagem e redes estruturadas":"Câblage et réseaux structurés",
"Instalação, certificação e gestão de redes de dados.":"Installation, certification et gestion de réseaux de données.",
"Redes wireless empresariais":"Réseaux wifi professionnels",
"WiFi de alta densidade para escritórios, hotéis e clínicas.":"WiFi haute densité pour bureaux, hôtels et cliniques.",
"Firewalls e acessos remotos":"Pare-feu et accès distants",
"Firewall, VPN e redundância de internet para trabalhar seguro.":"Pare-feu, VPN et redondance internet pour travailler en toute sécurité.",
"Microsoft 365 e cloud":"Microsoft 365 et cloud",
"Migração, licenciamento e trabalho remoto em cloud.":"Migration, licences et travail à distance dans le cloud.",
"Consultoria informática":"Conseil informatique",
"Levantamento de necessidades e desenho da solução certa.":"Analyse des besoins et conception de la solution adaptée.",
"Backups e cibersegurança":"Sauvegardes et cybersécurité",
"Cópias de segurança testadas e proteção de servidores e postos.":"Sauvegardes testées et protection des serveurs et des postes.",
"Setores que servimos":"Les secteurs que nous servons",
"Soluções desenhadas para as exigências de cada atividade.":"Des solutions conçues pour les exigences de chaque activité.",
"Hotelaria":"Hôtellerie",
"Clínicas e saúde":"Cliniques et santé",
"Setor público":"Secteur public",
"Escritórios e multinacionais":"Bureaux et multinationales",
"Porquê a DataRoad":"Pourquoi DataRoad",
"Um parceiro de IT que a sua empresa não tem de gerir":"Un partenaire informatique que votre entreprise n'a pas à gérer",
"Excelência técnica, certificações e experiência comprovada em ambientes empresariais exigentes.":"Excellence technique, certifications et expérience éprouvée dans des environnements professionnels exigeants.",
"Suporte local, remoto e telefónico":"Support sur site, à distance et par téléphone",
"Assistência informática imediata, 24/7, 365 dias por ano.":"Assistance informatique immédiate, 24h/24 et 7j/7, 365 jours par an.",
"Equipa certificada":"Équipe certifiée",
"Técnicos com certificações reconhecidas e anos de experiência em empresas exigentes.":"Des techniciens aux certifications reconnues et des années d'expérience auprès d'entreprises exigeantes.",
"Gestão total da sua área informática":"Gestion complète de votre informatique",
"Postos de trabalho, servidores, redes e cibersegurança — tudo num só parceiro.":"Postes de travail, serveurs, réseaux et cybersécurité — le tout avec un seul partenaire.",
"Valor mensal fixo, sem surpresas":"Forfait mensuel fixe, sans surprises",
"Avença transparente com SLA definido e monitorização proativa incluída.":"Forfait transparent avec SLA défini et surveillance proactive incluse.",
"Pedir proposta sem compromisso":"Demander un devis sans engagement",
"Perguntas frequentes":"Questions fréquentes",
"O que inclui o contrato IT Unlimited?":"Que comprend le contrat IT Unlimited ?",
"Assistência ilimitada — local, remota e telefónica —, gestão de postos de trabalho, servidores e redes, e monitorização proativa 24/7, por um valor mensal fixo.":"Assistance illimitée — sur site, à distance et par téléphone —, gestion des postes de travail, des serveurs et des réseaux, et surveillance proactive 24h/24 et 7j/7, pour un forfait mensuel fixe.",
"Trabalham com empresas de que dimensão?":"Avec des entreprises de quelle taille travaillez-vous ?",
"Desde escritórios com poucos postos a hotéis, clínicas e organismos públicos com centenas de utilizadores. A avença é dimensionada ao número de postos e servidores.":"Des bureaux de quelques postes aux hôtels, cliniques et organismes publics comptant des centaines d'utilisateurs. Le forfait est dimensionné selon le nombre de postes et de serveurs.",
"Em que zonas do país intervêm?":"Dans quelles régions du pays intervenez-vous ?",
"Assistência presencial em Lisboa, Cascais, Oeiras, Setúbal, Barreiro, Porto, Beja e Faro/Algarve, com suporte remoto e telefónico em todo o país.":"Assistance sur site à Lisbonne, Cascais, Oeiras, Setúbal, Barreiro, Porto, Beja et Faro/Algarve, avec un support à distance et téléphonique dans tout le pays.",
"Como começa o processo?":"Comment commence le processus ?",
"Com um diagnóstico sem compromisso: analisamos a infraestrutura atual e apresentamos uma proposta com âmbito, SLA e valor mensal.":"Par un diagnostic sans engagement : nous analysons l'infrastructure actuelle et présentons une proposition avec périmètre, SLA et montant mensuel.",
"As nossas últimas notícias":"Nos dernières actualités",
"As Nossas Últimas Notícias":"Nos Dernières Actualités",
"Ver todas as notícias":"Voir toutes les actualités",
"Ligar agora":"Appeler maintenant",
"Pedir proposta":"Demander un devis",
"Ler mais":"Lire la suite",
"Ver mais":"Voir plus",
"Ver menos":"Voir moins"
};
var VT={en:["See all services (",")","See all "," services"],es:["Ver todos los servicios (",")","Ver los "," servicios"],fr:["Voir tous les services (",")","Voir les "," services"]};
var MAPAS={en:DIC,es:DIC_ES,fr:DIC_FR};
var IDS=['dr-hero','dr-nums','dr-servicos','dr-setores','dr-porque','dr-faq','dr-noticias','dr-bar'];
var ocupado=false;
var IDIOMAS=['en','es','fr'];
var SLUGS={
"/cambiar-de-empresa-informatica/":"es",
"/changer-de-prestataire-informatique/":"fr",
"/ciberseguridad-empresas/":"es",
"/client-portal/":"en",
"/cybersecurite-entreprises/":"fr",
"/cybersecurity-for-business/":"en",
"/empresa-servicios-informatica-contacto/":"es",
"/entreprise-services-informatiques-contact/":"fr",
"/externalizacion-informatica-portugal/":"es",
"/faq-services-informatiques/":"fr",
"/faq-servicios-de-it/":"es",
"/forfait-it-unlimited-essential/":"fr",
"/forfait-it-unlimited-premium-365/":"fr",
"/forfait-it-unlimited-premium/":"fr",
"/infogerance-informatique-portugal/":"fr",
"/infraestructura-it-empresas-internacionales-portugal/":"es",
"/infrastructure-it-entreprises-internationales-portugal/":"fr",
"/it-infrastructure-international-companies-portugal/":"en",
"/it-outsourcing/":"en",
"/it-services-business/":"en",
"/it-services-company-contact/":"en",
"/it-services-faq/":"en",
"/it-services/":"en",
"/it-support-ticketing-system/":"en",
"/it-unlimited-essential-plan/":"en",
"/it-unlimited-premium-365-plan/":"en",
"/it-unlimited-premium-plan/":"en",
"/niveaux-de-service-sla/":"fr",
"/niveles-de-servicio-sla/":"es",
"/plan-it-unlimited-essential/":"es",
"/plan-it-unlimited-premium-365/":"es",
"/plan-it-unlimited-premium/":"es",
"/portail-clients/":"fr",
"/portal-de-clientes/":"es",
"/service-level-agreements-sla/":"en",
"/services-informatiques-entreprises/":"fr",
"/services-informatiques-premium-entreprises/":"fr",
"/servicios-informatica-empresas/":"es",
"/servicios-informaticos-empresas/":"es",
"/soporte-informatico-portugal/":"es",
"/soporte-informatico-tickets/":"es",
"/support-informatique-tickets/":"fr",
"/switching-it-provider-portugal/":"en"
};
var CONTACTO={en:'/it-services-company-contact/',es:'/empresa-servicios-informatica-contacto/',fr:'/entreprise-services-informatiques-contact/'};
var CONTACTOPT='/empresa-servicos-informatica/';
function idiomaSlug(){ return SLUGS[location.pathname]||null; }
function idioma(){
var sl=idiomaSlug(); if(sl) return sl;
var m=location.pathname.match(/^\/(en|es|fr)(\/|$)/);
if(m) return m[1];
var l=(document.documentElement.getAttribute('lang')||'').slice(0,2).toLowerCase();
return IDIOMAS.indexOf(l)>-1 ? l : 'pt';
}
function ing(){ return !!MAPAS[idioma()]; }
function prefixo(){ if(idiomaSlug()) return ''; var i=idioma(); return i==='pt' ? '' : '/'+i; }
function blocos(){
var r=[];
for(var i=0;i<IDS.length;i++){ var e=document.getElementById(IDS[i]); if(e) r.push(e); }
var vm=document.querySelectorAll('.dr-vermais');
for(var j=0;j<vm.length;j++) r.push(vm[j]);
return r;
}
function texto(raiz){
var w=document.createTreeWalker(raiz,NodeFilter.SHOW_TEXT,null,false);
var lista=[],n;
while(n=w.nextNode()) lista.push(n);
for(var i=0;i<lista.length;i++){
var no=lista[i], t=no.nodeValue, k=t.replace(/\s+/g,' ').trim();
if(!k) continue;
if(DIC[k]!==undefined && DIC[k]!==k){ no.nodeValue=t.replace(k,DIC[k]); continue; }
var m=k.match(/^Ver todos os serviços \((\d+)\)$/);
if(m){ no.nodeValue=t.replace(k,(VT[idioma()]||VT.en)[0]+m[1]+(VT[idioma()]||VT.en)[1]); continue; }
var m2=k.match(/^Ver todos os (\d+) serviços$/);
if(m2){ no.nodeValue=t.replace(k,(VT[idioma()]||VT.en)[2]+m2[1]+(VT[idioma()]||VT.en)[3]); }
}
}
function atributos(raiz){
if(ing()){
var al=raiz.querySelectorAll?raiz.querySelectorAll('[aria-label]'):[];
for(var i=0;i<al.length;i++){ var v=al[i].getAttribute('aria-label'); if(DIC[v]&&DIC[v]!==v) al[i].setAttribute('aria-label',DIC[v]); }
}
var sl=idiomaSlug();
if(sl&&CONTACTO[sl]){
var lc=raiz.querySelectorAll?raiz.querySelectorAll('a[href]'):[];
for(var c=0;c<lc.length;c++){ var hc=lc[c].getAttribute('href'); if(hc===CONTACTOPT){ lc[c].setAttribute('href',CONTACTO[sl]); } }
}
var p=prefixo();
if(!p) return;
var ls=raiz.querySelectorAll?raiz.querySelectorAll('a[href]'):[];
for(var j=0;j<ls.length;j++){
var h=ls[j].getAttribute('href');
if(!h) continue;
if(h.charAt(0)!=='/' ) continue;
if(h.charAt(1)==='/') continue;
if(/^\/(en|es|fr)(\/|$)/.test(h)) continue;
ls[j].setAttribute('href',p+h);
}
}
function traduzir(){
if(ocupado) return;
ocupado=true;
try{
var b=blocos(), ehEN=ing();
for(var i=0;i<b.length;i++){ if(ehEN) texto(b[i]); atributos(b[i]); }
}catch(e){}
ocupado=false;
}
function arranca(){
if(idioma()==='pt') return;
DIC=MAPAS[idioma()]||DIC;
traduzir();
try{
var mo=new MutationObserver(function(){ if(!ocupado) setTimeout(traduzir,0); });
var b=blocos();
for(var i=0;i<b.length;i++) mo.observe(b[i],{childList:true,subtree:true,characterData:true});
}catch(e){}
document.addEventListener('click',function(){ setTimeout(traduzir,80); },true);
try{ new MutationObserver(function(){ if(!ocupado) setTimeout(traduzir,0); }).observe(document.body,{childList:true}); }catch(e){}
var nt=0, ti=setInterval(function(){ traduzir(); if(++nt>16) clearInterval(ti); },400);
}
if(document.readyState==='loading') document.addEventListener('DOMContentLoaded',function(){ setTimeout(arranca,400); });
else setTimeout(arranca,400);
})();
/* ============ Cookies: a barra fixa nao pode tapar o aviso de consentimento ============ */
(function(){
function bar(){ return document.getElementById('dr-bar'); }
function banner(){
return document.getElementById('moove_gdpr_cookie_info_bar')
|| document.querySelector('#cookie-law-info-bar, #cmplz-cookiebanner-container, .cky-consent-container, #cookie-notice');
}
function visivel(e){
if(!e) return false;
var cs=window.getComputedStyle(e);
if(cs.display==='none'||cs.visibility==='hidden'||parseFloat(cs.opacity||'1')===0) return false;
if(/moove-gdpr-info-bar-hidden/.test(e.className||'')) return false;
return e.getBoundingClientRect().height>4;
}
function ajusta(){
var b=bar(); if(!b) return;
var ck=banner(), sub=document.getElementById('scrollUp');
if(visivel(ck)){
var h=Math.round(ck.getBoundingClientRect().height);
if(h>260) h=260;
b.style.setProperty('bottom',h+'px','important');
if(sub) sub.style.setProperty('bottom',(96+h)+'px','important');
document.body.style.setProperty('padding-bottom',(74+h)+'px','important');
document.body.classList.add('dr-cookies');
}else{
b.style.removeProperty('bottom');
if(sub) sub.style.removeProperty('bottom');
document.body.style.removeProperty('padding-bottom');
document.body.classList.remove('dr-cookies');
}
}
function arranca(){
if(!window.matchMedia('(max-width:1024px)').matches) return;
ajusta();
try{
var ck=banner();
if(ck) new MutationObserver(ajusta).observe(ck,{attributes:true,attributeFilter:['class','style']});
new MutationObserver(function(){ ajusta(); }).observe(document.body,{childList:true});
}catch(e){}
document.addEventListener('click',function(){ setTimeout(ajusta,120); setTimeout(ajusta,700); },true);
window.addEventListener('resize',ajusta);
var n=0, t=setInterval(function(){ ajusta(); if(++n>24) clearInterval(t); },500);
}
if(document.readyState==='loading') document.addEventListener('DOMContentLoaded',function(){ setTimeout(arranca,600); });
else setTimeout(arranca,600);
})();
/* ====== Casos de estudo: o bloco colapsa e sobrepoe a seccao seguinte ====== */
(function(){
function ajusta(){
var ws=document.querySelectorAll('.elementor-widget-casestudy');
for(var i=0;i<ws.length;i++){
var w=ws[i];
var c=w.querySelector('.elementor-widget-container');
if(!c) continue;
var alvo=Math.ceil(c.getBoundingClientRect().height);
if(alvo<40) continue;
var atual=Math.ceil(w.getBoundingClientRect().height);
if(atual < alvo-2){ w.style.setProperty('min-height',alvo+'px','important'); }
else if(atual > alvo+2 && w.style.minHeight){ w.style.setProperty('min-height',alvo+'px','important'); }
}
}
function arranca(){
ajusta();
var n=0,t=setInterval(function(){ ajusta(); if(++n>20) clearInterval(t); },500);
window.addEventListener('resize',function(){ setTimeout(ajusta,150); });
window.addEventListener('load',function(){ setTimeout(ajusta,300); setTimeout(ajusta,1200); });
try{
var ws=document.querySelectorAll('.elementor-widget-casestudy');
for(var i=0;i<ws.length;i++){
var imgs=ws[i].querySelectorAll('img');
for(var j=0;j<imgs.length;j++){ imgs[j].addEventListener('load',function(){ setTimeout(ajusta,60); }); }
}
}catch(e){}
}
if(document.readyState==='loading') document.addEventListener('DOMContentLoaded',function(){ setTimeout(arranca,300); });
else setTimeout(arranca,300);
})();
/* DataRoad — correções de acessibilidade
Instalado em WPCode como snippet de JavaScript, no rodapé do site.
Corrige três coisas que o Lighthouse aponta e que vêm do tema / dos plugins:
1. elementos com aria-hidden="true" que continham conteúdo focável
2. setas do carrossel slick com role="tab" sem um role="tablist" à volta
3. links que só têm um ícone e portanto não têm texto para um leitor de ecrã
Nada aqui altera o aspecto visual nem o comportamento do rato.
*/
(function () {
'use strict';
var FOCAVEL = 'a[href],button,input,select,textarea,iframe,[contenteditable="true"],[tabindex]';
var NATIVAMENTE_FOCAVEL = /^(A|BUTTON|INPUT|SELECT|TEXTAREA|IFRAME|AREA|OBJECT|EMBED|SUMMARY|AUDIO|VIDEO)$/;
function comOProprio(el, seletor) {
var lista = [].slice.call(el.querySelectorAll(seletor));
if (el.nodeType === 1 && el.matches && el.matches(seletor)) lista.unshift(el);
return lista;
}
/* 1. aria-hidden não pode conter nada focável.
O slick marca com aria-hidden="true" os slides que estão fora de vista,
mas deixa lá dentro links na ordem de tabulação — e põe tabindex="-1"
no próprio slide, o que o mantém focável por programa. As duas coisas
contam como falha.
Para os links basta tirá-los da ordem de tabulação (tabindex="-1").
Para os contentores decorativos (divs) tira-se o tabindex por completo,
porque uma div sem tabindex não é focável de todo.
O valor original fica guardado em data-dr-ti e é reposto
assim que o elemento volta a ficar visível. Usamos tabindex e não inert
de propósito: o inert também bloqueia o rato, e o slick mantém
aria-hidden em slides que continuam visíveis. */
function tirarDoTab(el) {
var alvos = comOProprio(el, FOCAVEL);
for (var i = 0; i < alvos.length; i++) {
var f = alvos[i];
var atual = f.getAttribute('tabindex');
if (NATIVAMENTE_FOCAVEL.test(f.tagName)) {
// um link continua a ser focavel; basta tira-lo da ordem de tabulacao
if (atual === '-1') continue;
if (!f.hasAttribute('data-dr-ti')) f.setAttribute('data-dr-ti', atual === null ? '' : atual);
f.setAttribute('tabindex', '-1');
} else {
// uma div so e focavel por causa do tabindex - tira-se o atributo todo
if (atual === null) continue;
if (!f.hasAttribute('data-dr-ti')) f.setAttribute('data-dr-ti', atual);
f.removeAttribute('tabindex');
}
}
}
function devolverAoTab(el) {
var marcados = comOProprio(el, '[data-dr-ti]');
for (var i = 0; i < marcados.length; i++) {
var m = marcados[i];
if (m.closest('[aria-hidden="true"]')) continue;
var orig = m.getAttribute('data-dr-ti');
if (orig === '') m.removeAttribute('tabindex');
else m.setAttribute('tabindex', orig);
m.removeAttribute('data-dr-ti');
}
}
/* Trata um elemento cujo aria-hidden acabou de mudar. Corre de forma
síncrona, dentro do MutationObserver, para não haver sequer um instante em
que a página esteja em falta — era isso que o Lighthouse apanhava. */
function tratarElemento(el) {
if (!el || el.nodeType !== 1) return;
if (el.getAttribute('aria-hidden') === 'true') tirarDoTab(el);
else devolverAoTab(el);
}
function varrerAriaHidden() {
var ocultos = document.querySelectorAll('[aria-hidden="true"]');
for (var i = 0; i < ocultos.length; i++) tirarDoTab(ocultos[i]);
devolverAoTab(document.documentElement);
}
/* 2. As setas do slick não são separadores. */
function corrigirSetas() {
var setas = document.querySelectorAll('.slick-arrow[role="tab"], .slick-nav[role="tab"]');
for (var i = 0; i < setas.length; i++) {
var b = setas[i];
b.removeAttribute('role');
b.removeAttribute('aria-selected');
if (!b.getAttribute('aria-label')) {
b.setAttribute('aria-label', b.className.indexOf('slick-prev') > -1 ? 'Anterior' : 'Seguinte');
}
}
}
/* 3. Links só com ícone ficam sem nome acessível.
O texto vem do título do cartão onde o link está. */
function nomearLinks() {
var links = document.querySelectorAll('.service-box a, .service-btn a, a.meanmenu-reveal, a[href]:not([aria-label]):not([title])');
for (var i = 0; i < links.length; i++) {
var a = links[i];
if (a.getAttribute('aria-label') || a.getAttribute('title')) continue;
if ((a.textContent || '').trim() !== '') continue;
var img = a.querySelector('img[alt]');
if (img && img.getAttribute('alt').trim() !== '') continue;
if (!a.getClientRects().length) continue;
var nome = '';
if (a.className.indexOf('meanmenu-reveal') > -1) {
nome = 'Abrir menu';
} else {
var cartao = a.closest('.service-box, .service-item, .single-service');
var titulo = cartao && cartao.querySelector('h1,h2,h3,h4,h5,h6,.service-title');
if (titulo) nome = 'Ler mais sobre ' + titulo.textContent.trim().replace(/\s+/g, ' ');
}
if (!nome) {
var href = a.getAttribute('href') || '';
var ultimo = href.split('?')[0].split('#')[0].split('/').filter(Boolean).pop();
if (ultimo && ultimo.indexOf('.') === -1) nome = 'Ir para ' + ultimo.replace(/-/g, ' ');
}
if (nome) a.setAttribute('aria-label', nome);
}
}
function correrTudo() {
try { varrerAriaHidden(); } catch (e) {}
try { corrigirSetas(); } catch (e) {}
try { nomearLinks(); } catch (e) {}
}
var temporizador = null;
function agendar() {
if (temporizador) clearTimeout(temporizador);
temporizador = setTimeout(function () { temporizador = null; correrTudo(); }, 50);
}
if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', correrTudo);
else correrTudo();
window.addEventListener('load', correrTudo);
/* O slick e o Slider Revolution só constroem o carrossel algum tempo depois
do load. Estas passagens extra fecham essa janela — uma passagem completa
custa cerca de 1 ms, medido neste site. */
var ms = [300, 800, 1500, 3000, 6000];
for (var i = 0; i < ms.length; i++) setTimeout(correrTudo, ms[i]);
if (window.MutationObserver) {
new MutationObserver(function (registos) {
var precisaVarrerTudo = false;
for (var j = 0; j < registos.length; j++) {
var r = registos[j];
if (r.type === 'attributes' && r.attributeName === 'aria-hidden') {
try { tratarElemento(r.target); } catch (e) {}
continue;
}
/* O slick também põe tabindex nos slides depois de os esconder. */
if (r.type === 'attributes' && r.attributeName === 'tabindex') {
try {
var pai = r.target.closest('[aria-hidden="true"]');
if (pai) tirarDoTab(pai);
} catch (e) {}
continue;
}
/* O slick reconstrói os slides (e os clones) já com aria-hidden posto.
Tratamos os nós novos aqui, de forma síncrona, senão haveria uma
janela de alguns milissegundos com conteúdo focável lá dentro. */
if (r.type === 'childList') {
for (var k = 0; k < r.addedNodes.length; k++) {
var novoNo = r.addedNodes[k];
if (!novoNo || novoNo.nodeType !== 1) continue;
try {
var recipiente = novoNo.closest('[aria-hidden="true"]');
if (recipiente) tirarDoTab(recipiente);
var dentro = novoNo.querySelectorAll('[aria-hidden="true"]');
for (var q = 0; q < dentro.length; q++) tirarDoTab(dentro[q]);
} catch (e) {}
}
}
precisaVarrerTudo = true;
}
if (precisaVarrerTudo) agendar();
}).observe(document.documentElement, {
subtree: true,
childList: true,
attributes: true,
attributeFilter: ['aria-hidden', 'class', 'role', 'tabindex']
});
}
})();
var aioseoGtm = {"containerId":"GTM-M4WM27G"};
//# sourceURL=aioseo%2Fjs%2Fsrc%2Fapp%2Fgtm%2Fmain.js-js-extra
var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"Partilhar no Facebook","shareOnX":"Partilhar no X","pinIt":"Fix\u00e1-lo","download":"Descarregar","downloadImage":"Descarregar Imagem","fullscreen":"\u00c9cr\u00e3 Inteiro","zoom":"Zoom","share":"Partilhar","playVideo":"Reproduzir v\u00eddeo","previous":"Anterior","next":"Seguinte","close":"Fechar","a11yCarouselPrevSlideMessage":"Diapositivo anterior","a11yCarouselNextSlideMessage":"Seguinte diapositivo","a11yCarouselFirstSlideMessage":"Este \u00e9 o primeiro diapositivo","a11yCarouselLastSlideMessage":"Este \u00e9 o \u00faltimo diapositivo","a11yCarouselPaginationBulletMessage":"Ir para o diapositivo"},"is_rtl":false,"breakpoints":{"xs":0,"sm":480,"md":768,"lg":1025,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"Mobile ao alto","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile ao baixo","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"Tablet Portrait","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"Port\u00e1til","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Widescreen","value":2400,"default_value":2400,"direction":"min","is_enabled":false}},"hasCustomBreakpoints":false},"version":"4.2.3","is_static":false,"experimentalFeatures":{"e_font_icon_svg":true,"additional_custom_breakpoints":true,"container":true,"e_panel_promotions":true,"theme_builder_v2":true,"nested-elements":true,"global_classes_should_enforce_capabilities":true,"e_variables":true,"e_opt_in_v4_page":true,"e_components":true,"e_interactions":true,"e_widget_creation":true,"import-export-customization":true,"e_pro_atomic_form":true,"e_pro_collection_loop":true,"mega-menu":true,"e_pro_variables":true,"e_pro_interactions":true},"urls":{"assets":"https:\/\/www.dataroad.pt\/wp-content\/plugins\/elementor\/assets\/","ajaxurl":"https:\/\/www.dataroad.pt\/wp-admin\/admin-ajax.php","uploadUrl":"https:\/\/www.dataroad.pt\/wp-content\/uploads"},"nonces":{"floatingButtonsClickTracking":"e2014170e3","atomicFormsSendForm":"4f4cd71cd9"},"swiperClass":"swiper","settings":{"page":[],"editorPreferences":[]},"kit":{"active_breakpoints":["viewport_mobile","viewport_tablet"],"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description"},"post":{"id":30966,"title":"Cablagem%20CAT6A%20e%20Fibra%20%C3%93tica%20em%20Lisboa%20%7C%20DataRoad","excerpt":"Cablagem estruturada CAT6A e fibra \u00f3tica em Lisboa para empresas: instala\u00e7\u00e3o certificada at\u00e9 10 Gbps, bastidores organizados e documenta\u00e7\u00e3o completa.","featuredImage":"https:\/\/www.dataroad.pt\/wp-content\/uploads\/2026\/08\/dataroad_rede_informatica-1024x683.jpg"}};
//# sourceURL=elementor-frontend-js-before