;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
Topo
Notícias

Túnel Santos-Guarujá: valor da obra sobe e leilão é agendado para setembro

Projeto do novo túnel Santos-Guarujá mostra que trajeto feito hoje em uma hora deve durar dois minutos  - Reprodução / Autoridade Portuária de Santos
Projeto do novo túnel Santos-Guarujá mostra que trajeto feito hoje em uma hora deve durar dois minutos Imagem: Reprodução / Autoridade Portuária de Santos
do UOL

Do UOL, em São Paulo

10/06/2025 08h51

O edital de licitação do túnel Santos-Guarujá foi republicado pelo governo de São Paulo e a data para leilão da obra, que antes era prevista para o começo de agosto, foi alterada para 5 de setembro.

O que aconteceu

Concessionária que assumir obra deve investir R$ 6,4 bilhões, valor R$ 840 milhões maior do que o estimado inicialmente. A nova versão do edital foi publicada no Diário Oficial do Estado ontem.

Mudança na data aconteceu para "maturação" das propostas, segundo o governo. O leilão vai ser feito às 16h na sede da B3, no centro de São Paulo. O prazo da concessão é de 30 anos.

Aumento do valor da obra foi resultado da revisão de custos de materiais como concreto, drenagem e paredes. Segundo o governo de São Paulo, parte das mudanças no edital inicial aconteceu após contribuições de investidores internacionais no roadshow internacional, evento promovido pelo governo do estado em abril.

Caso a obra saia do papel, este será o maior túnel submerso da América Latina. O objetivo é garantir mais segurança e agilidade no deslocamento entre Santos e Guarujá. O projeto faz parte do Programa de Parcerias de Investimentos de São Paulo.

Túnel é aguardado há quase cem anos

Não há data oficial para inauguração do túnel. As cidades são separadas pelo canal do estuário, a uma distância de 400 metros, o que traz desafios à mobilidade urbana da população. A distância é percorrida em aproximadamente sete minutos, sendo que a espera para a travessia pode variar de 15 minutos até mais de uma hora, dependendo das condições da maré no estuário.

A construção do túnel é uma promessa antiga de diferentes governos. Hoje, a ligação entre as duas cidades é feita pela rodovia Cônego Domenico Rangoni (SP-055), com 43 km de extensão, e pelas balsas das travessias litorâneas (istradas pelo Departamento Hidroviário), que levam em média 18 minutos para concluir a travessia. De acordo com o governo federal, as conexões hoje disponíveis entre os municípios também apresentam impactos na operação do Porto de Santos, formado por um conjunto de terminais voltados à armazenagem e à movimentação de cargas e ageiros.

Ligação direta entre as duas cidades é demanda histórica da Baixada Santista. O túnel servirá como ligação seca entre os dois municípios para o deslocamento de veículos, bicicletas e pedestres. Atualmente, mais de 21 mil carros cruzam diariamente as duas margens utilizando balsas e catraias, além de 7.700 ciclistas e 7.600 pedestres.

A obra vem sendo discutida há pelo menos 98 anos. Em janeiro de 1927, o jornal A Tribuna publicou uma reportagem sobre a construção do túnel. O texto cita a ideia do engenheiro Enéas Marini, que também planejava um túnel entre Rio de Janeiro e Niterói.

Primeira folha da edição de 23 de janeiro de 1927 do Jornal A Tribuna - Reprodução/Jornal A Tribuna - Reprodução/Jornal A Tribuna
Primeira folha da edição de 23 de janeiro de 1927 do Jornal A Tribuna
Imagem: Reprodução/Jornal A Tribuna

Como será o túnel entre Santos e Guarujá?

Túnel Santos-Guarujá - Reprodução / Autoridade Portuária de Santos - Reprodução / Autoridade Portuária de Santos
Túnel Santos-Guarujá
Imagem: Reprodução / Autoridade Portuária de Santos

Nova ligação entre cidades. O túnel submerso fará a ligação entre o cais de Outeirinhos, no bairro do Macuco, em Santos, e o Linhão da Codesp, no bairro de Vicente de Carvalho, no Guarujá.

Tempo da travessia deve cair para cerca de dois minutos. A projeção é da Autoridade Portuária de Santos.

A travessia pela estrada dura 60 minutos. O objetivo principal da obra é melhorar o fluxo de carros, pedestres e cargas entre as duas cidades do litoral.

Toda a estrutura terá 1,5 km de extensão, sendo 870 metros submersa. Haverá três faixas de rolamento por sentido, com uma delas para a agem do VLT (Veículo Leve sobre Trilhos). O túnel será aberto par travessia de pedestres e ciclistas.

Governo prevê que construção do túnel deve gerar 9.000 empregos diretos e indiretos. Ao todo, 86% do investimento será dividido entre o Ministério de Portos e Aeroportos e o governo de São Paulo. O restante do valor será custeado pela iniciativa privada.

Notícias