Telefone: (61) 3327-3888

Estacionamento gratuito para clientes

contato@pinheiroadvocaciadf.com.br
Pinheiro AdvocaciaPinheiro AdvocaciaPinheiro AdvocaciaPinheiro Advocacia
  • Home
  • Quem Somos
  • Áreas de Atuação
    • Direito Trabalhista
    • Direito Empresarial
    • Direito de Família e Sucessões
    • Direito Condominial
    • Direito Imobiliário
    • Direito do Consumidor
    • Contratos
    • Direito de trânsito
  • Notícias
  • Contato
    • Envie um E-mail
    • Banco de Talentos
  • Advogado Correspondente

Emissora é condenada por dano coletivo por submeter jornalistas a horas extras em excesso

    Home Sem categoria Emissora é condenada por dano coletivo por submeter jornalistas a horas extras em excesso

    Emissora é condenada por dano coletivo por submeter jornalistas a horas extras em excesso

    By admin | Sem categoria | 0 comment | 22 agosto, 2025 | 0

    Imprimir

    Além de jornalistas, maioria dos empregados da TV extrapolava limites de jornada 

    Resumo:

    A TV Guararapes foi condenada por submeter jornalistas e demais empregados a jornadas excessivas e descumprir regras de descanso.
    A SDI-1 do TST restabeleceu sentença que determinou indenização de R$ 30 mil por dano moral coletivo e multa de R$ 5 mil por empregado prejudicado.
    A Justiça apontou risco à saúde dos trabalhadores e reforçou que o pagamento de horas extras não pode ser regra, mas exceção.

    22/8/2025 – A Subseção I Especializada em Dissídios Individuais (SDI-1) do Tribunal Superior do Trabalho condenou a TV Guararapes, nome fantasia do Sistema Associado de Comunicação S.A., de Recife (PE), a pagar indenização por dano moral coletivo por submeter a maioria dos empregados a trabalho extraordinário em excesso, desrespeitar o intervalo interjornada e descumprir a regra que prevê a concessão de descanso semanal regular. 

    A ação civil pública contra a emissora foi ajuizada em 2018 pelo Ministério Público do Trabalho (MPT) requerendo medidas judiciais para fazê-la cumprir a legislação referente à duração do trabalho. Segundo o MPT,  havia constante extrapolação dos limites de jornada e não concessão dos intervalos interjornada e dos descansos semanais remunerados (DSR) no período correto.

    “Excepcional necessidade do serviço”

    A empresa alegou que pagava as horas extras e que o motivo para a extrapolação da jornada seria a excepcional necessidade do serviço, decorrente do período de migração do sinal analógico para o digital.  

    O juízo de primeiro grau e o Tribunal Regional do Trabalho da 6ª Região (PE), no entanto, verificaram, pelos cartões de ponto, o trabalho extraordinário reiterado em vários períodos, inclusive em meses posteriores ao período de migração do sinal analógico para o digital, derrubando o argumento da emissora de excepcional necessidade do serviço. 

    Quanto à não concessão dos intervalos interjornadas e dos DSR’s no período correto, embora a emissora alegasse que houve investigação arquivada sobre tais fatos, foi comprovado que, posteriormente ao arquivamento, cartões de ponto demonstraram, nos meses de novembro/17, dezembro/17 e janeiro/18, a reiteração e a continuidade das irregularidades. 

    Condenação

    A sentença determinou o cumprimento da legislação a respeito da duração do trabalho: manter controle de jornada fidedigno, não extrapolação da jornada diária, prestação máxima de 2h extras diárias, pagamento de horas extras no percentual de 50%, concessão de intervalo interjornada e de descanso semanal remunerado após o sexto dia de trabalho consecutivo. No caso de descumprimento dessas obrigações, a sentença estipulou a penalidades de multa de R$ 5 mil por empregado prejudicado a cada ocorrência – apuradas mês a mês, a ser revertida em favor de entidade local -, e, além disso, condenou a empresa a pagar dano moral coletivo de R$ 30 mil.

    Aumento do risco de acidentes e doenças 

    O TRT da 6ª Região (PE), que manteve as condenações da primeira instância, ressaltou que, ainda que todas as horas extras tenham sido pagas, a extrapolação dos limites de jornada, com o sobrecarregamento dos jornalistas e demais funcionários, pode gerar aumento do risco de acidentes e doenças do trabalho. Por isso, destacou que o pagamento da hora extra não deve ser a regra, mas uma compensação pelo exercício excepcional do trabalho.

    Dano moral coletivo 

    Ao julgar recurso de revista do empregador, a Oitava Turma do TST considerou que não houve lesão ao patrimônio imaterial de toda a coletividade, apesar do desrespeito à legislação trabalhista e às normas constitucionais de proteção aos trabalhadores. Para esse colegiado, o trabalho excessivo e a concessão incorreta do intervalo interjornada e do repouso semanal remunerado não geram dano moral coletivo, sendo necessária a demonstração de prejuízo à qualidade de vida do empregado. 

    No recurso de embargos, o Ministério Público alegou que a decisão da Oitava Turma era em sentido diametralmente contrário ao sinalizado pela jurisprudência majoritária do TST. 

    “Necessária reparação coletiva”

    Segundo o relator do recurso na SDI-1,  ministro Alexandre Luiz Ramos, as irregularidades praticadas pela empresa “configuram, sim, o dano moral coletivo, uma vez que a conduta assume dimensão que repercute no plano dos valores e interesses coletivos e difusos da sociedade”. Ainda de acordo com o relator, analisando o contexto do caso, identifica-se “potencial dano moral à coletividade, e que se reveste de características tais que interferem no equilíbrio social e geram a transcendência necessária à reparação coletiva”.

    Na avaliação do ministro Alexandre Ramos, não há necessidade de demonstração de prejuízo, pois, em hipóteses como a do caso, “prevalece o entendimento segundo o qual, para a configuração do dano moral, exige-se apenas a prova dos fatos que deram ensejo ao pedido de indenização”. 

    Nessa situação, havendo requisitos necessários para a condenação ao pagamento de indenização por dano moral coletivo, pois foi comprovada a existência de uma conduta ilícita que violou os interesses jurídicos fundamentais, de natureza extrapatrimonial, de forma a causar danos individuais, coletivos (stricto sensu) e difusos, a SDI-1 restabeleceu a sentença que condenou a empresa a pagar reparação por dano moral coletivo.

    (Lourdes Tavares/GS)

    Processo: E-RRAg – 748-76.2018.5.06.0012 

    Receba nossos conteúdos
    Quer receber as notícias do TST em seu email? Assine a nossa newsletter.
    Se quiser receber as notícias em seu WhatsApp, faça parte da comunidade do TST no aplicativo. Atenção: ao ingressar, os demais membros não terão acesso ao seu contato. Os envios de conteúdo são realizados uma vez por dia, em dias úteis.

    Esta matéria é meramente informativa.
    Permitida a reprodução mediante citação da fonte.
    Secretaria de Comunicação Social
    Tribunal Superior do Trabalho
    Tel. (61) 3043-4907 
    secom@tst.jus.br

    ×
    1 / 1
    ‹
    ›

    Mais detalhes

    Número de visualizações

    6
    Visualizações

    // Objeto para armazenar dados das imagens por grupo
    const imageGalleries = {};
    let currentModalIndex = 0;
    let currentGalleryGroup = 0;

    // Coletar dados das imagens do DOM por grupo, SEMPRE usando a ordem atual do DOM
    function initGalleryCustom() {
    // Limpar dados anteriores
    Object.keys(imageGalleries).forEach(key => delete imageGalleries[key]);

    console.log(‘Inicializando galerias baseado na ordem atual do DOM…’);

    // SEMPRE usar a ordem atual do DOM, ignorar scripts JSON após reordenação
    const galleryContainers = document.querySelectorAll(‘.gallery-container-custom’);

    galleryContainers.forEach((container) => {
    const groupId = container.getAttribute(‘data-gallery-group’);
    const thumbnails = container.querySelectorAll(‘.thumbnail’);

    imageGalleries[groupId] = [];

    // Coletar imagens na ordem atual do DOM
    thumbnails.forEach((img, index) => {
    imageGalleries[groupId].push({
    src: img.src,
    alt: img.alt,
    fileEntryId: img.getAttribute(‘data-fileentryid’),
    imageIndex: index, // Usar índice atual do DOM
    originalOrder: parseInt(img.getAttribute(‘data-original-order’)) || index
    });
    });

    console.log(‘Grupo ‘ + groupId + ‘ carregado com ‘ + imageGalleries[groupId].length + ‘ imagens (ordem DOM)’);
    });

    console.log(‘Galerias inicializadas:’, imageGalleries);

    // Atualizar contadores nos títulos
    updateGalleryTitles();

    // Recriar os atributos onclick com os índices corretos
    updateOnClickHandlers();
    }

    // Atualizar os handlers onclick para refletir a ordem atual
    function updateOnClickHandlers() {
    const galleryContainers = document.querySelectorAll(‘.gallery-container-custom’);

    galleryContainers.forEach((container) => {
    const groupId = container.getAttribute(‘data-gallery-group’);
    const thumbnails = container.querySelectorAll(‘.thumbnail’);

    thumbnails.forEach((img, index) => {
    // Atualizar o data-image-index para refletir a posição atual
    img.setAttribute(‘data-image-index’, index);

    // Remover o onclick antigo e adicionar o novo
    img.onclick = null;
    img.onclick = function() {
    openModalCustom(index, groupId);
    };

    console.log(‘Thumbnail ‘ + index + ‘ do grupo ‘ + groupId + ‘ atualizado’);
    });
    });
    }

    // Método fallback – REMOVIDO pois agora sempre usamos DOM
    // function fallbackLoadGallery(groupId) { … }

    // Atualizar títulos das galerias com contadores corretos
    function updateGalleryTitles() {
    Object.keys(imageGalleries).forEach(groupId => {
    const container = document.querySelector(‘.gallery-container-custom[data-gallery-group=”‘ + groupId + ‘”]’);
    if (container) {
    const title = container.querySelector(‘.gallery-header h3’);
    const imageCount = imageGalleries[groupId].length;
    if (title && imageCount > 0) {
    title.textContent = ‘Mais imagens (‘ + imageCount + ‘)’;
    }
    }
    });
    }

    // Função para reinicializar quando a ordem dos campos muda
    function handleFieldReorder() {
    console.log(‘Reordenação detectada, reinicializando galerias…’);

    // Fechar modal se estiver aberto
    const modal = document.getElementById(‘imageModalCustom’);
    if (modal && modal.style.display === ‘block’) {
    closeModalCustom();
    }

    // Atualizar IDs e reinicializar
    updateGroupIds();
    initGalleryCustom();
    }

    // Atualizar modal com nova imagem
    function updateModalImage() {
    const modalImage = document.getElementById(‘modalImageCustom’);
    const modalDescription = document.getElementById(‘modalDescriptionCustom’);
    const modalCounter = document.getElementById(‘modalCounterCustom’);
    const modalPrev = document.getElementById(‘modalPrevCustom’);
    const modalNext = document.getElementById(‘modalNextCustom’);

    const currentGallery = imageGalleries[currentGalleryGroup];

    if (currentGallery && currentGallery[currentModalIndex]) {
    const image = currentGallery[currentModalIndex];
    modalImage.src = image.src;
    modalImage.alt = image.alt;
    modalDescription.textContent = image.alt;
    modalCounter.textContent = (currentModalIndex + 1) + ‘ / ‘ + currentGallery.length;

    // Atualizar estado dos botões
    modalPrev.disabled = (currentModalIndex === 0);
    modalNext.disabled = (currentModalIndex === currentGallery.length – 1);

    console.log(‘Modal atualizado – Grupo:’, currentGalleryGroup, ‘Índice:’, currentModalIndex, ‘Imagem:’, image.src);
    }
    }

    // Abrir modal
    function openModalCustom(index, galleryGroup) {
    const modal = document.getElementById(‘imageModalCustom’);

    currentGalleryGroup = galleryGroup;
    currentModalIndex = index;

    console.log(‘Abrindo modal – Grupo:’, galleryGroup, ‘Índice:’, index);

    if (imageGalleries[galleryGroup] && imageGalleries[galleryGroup][index]) {
    updateModalImage();
    modal.style.display = ‘block’;
    document.body.style.overflow = ‘hidden’;
    } else {
    console.error(‘Imagem não encontrada:’, galleryGroup, index, imageGalleries);
    }
    }

    // Próxima imagem no modal
    function nextImageModal() {
    const currentGallery = imageGalleries[currentGalleryGroup];
    if (currentGallery && currentModalIndex 0) {
    currentModalIndex–;
    updateModalImage();
    }
    }

    // Fechar modal
    function closeModalCustom() {
    const modal = document.getElementById(‘imageModalCustom’);
    modal.style.display = ‘none’;
    document.body.style.overflow = ‘auto’;
    }

    // Event listeners
    document.addEventListener(‘DOMContentLoaded’, function() {
    // Inicializar galeria
    setTimeout(initGalleryCustom, 100);

    // Fechar modal clicando fora da imagem
    const modal = document.getElementById(‘imageModalCustom’);
    if (modal) {
    modal.addEventListener(‘click’, function(e) {
    if (e.target === modal) {
    closeModalCustom();
    }
    });
    }
    });

    // Escutar eventos de reordenação dos campos repetíveis
    document.addEventListener(‘repeatableFieldReordered’, function(e) {
    console.log(‘Campo reordenado detectado:’, e.detail);

    // Aguardar um pouco para garantir que o DOM foi atualizado
    setTimeout(function() {
    console.log(‘Detectando e corrigindo duplicação de conteúdo…’);

    // Primeiro, detectar e corrigir duplicação de matérias
    fixDuplicatedContent();

    // Depois atualizar galerias
    updateGroupIds();
    initGalleryCustom();

    // Se o modal estiver aberto, fechar para evitar inconsistências
    const modal = document.getElementById(‘imageModalCustom’);
    if (modal && modal.style.display === ‘block’) {
    closeModalCustom();
    console.log(‘Modal fechado devido à reordenação’);
    }
    }, 200);
    });

    // Escutar eventos de reordenação dos campos repetíveis
    document.addEventListener(‘repeatableFieldReordered’, function(e) {
    console.log(‘Campo reordenado detectado:’, e.detail);
    handleFieldReorder();
    });

    // Escutar evento de mudança de ordem do conteúdo
    document.addEventListener(‘contentOrderChanged’, function(e) {
    console.log(‘Ordem do conteúdo alterada:’, e.detail);
    handleContentOrderChange(e.detail);
    });

    // Lidar com mudança na ordem do conteúdo
    function handleContentOrderChange(detail) {
    console.log(‘Processando mudança de ordem do conteúdo…’);

    // Fechar modal se estiver aberto
    const modal = document.getElementById(‘imageModalCustom’);
    if (modal && modal.style.display === ‘block’) {
    closeModalCustom();
    }

    // Aguardar e reinicializar completamente
    setTimeout(function() {
    console.log(‘Reconstruindo galerias após mudança de conteúdo…’);

    // Limpar tudo e reconstruir
    rebuildGalleries();
    }, 300);
    }

    // Reconstruir galerias completamente
    function rebuildGalleries() {
    // Limpar dados existentes
    Object.keys(imageGalleries).forEach(key => delete imageGalleries[key]);

    // Encontrar todas as galerias novamente
    const galleryContainers = document.querySelectorAll(‘.gallery-container-custom’);

    console.log(‘Reconstruindo ‘ + galleryContainers.length + ‘ galerias’);

    galleryContainers.forEach((container, index) => {
    // Redefinir IDs de grupo sequencialmente
    container.setAttribute(‘data-gallery-group’, index);

    const thumbnails = container.querySelectorAll(‘.thumbnail’);
    imageGalleries[index] = [];

    // Recriar dados da galeria
    thumbnails.forEach((img, imgIndex) => {
    // Atualizar atributos
    img.setAttribute(‘data-gallery-group’, index);
    img.setAttribute(‘data-image-index’, imgIndex);

    // Recriar onclick
    img.onclick = function() {
    openModalCustom(imgIndex, index);
    };

    // Adicionar aos dados
    imageGalleries[index].push({
    src: img.src,
    alt: img.alt,
    fileEntryId: img.getAttribute(‘data-fileentryid’),
    imageIndex: imgIndex,
    originalOrder: imgIndex
    });
    });

    // Atualizar título
    const title = container.querySelector(‘.gallery-header h3’);
    if (title && imageGalleries[index].length > 0) {
    title.textContent = ‘Mais imagens (‘ + imageGalleries[index].length + ‘)’;
    }

    console.log(‘Galeria ‘ + index + ‘ reconstruída com ‘ + imageGalleries[index].length + ‘ imagens’);
    });

    console.log(‘Reconstrução concluída:’, imageGalleries);
    }

    // Função principal para lidar com reordenação (simplificada)
    function handleFieldReorder() {
    console.log(‘Processando reordenação de campos…’);

    // Fechar modal se estiver aberto
    const modal = document.getElementById(‘imageModalCustom’);
    if (modal && modal.style.display === ‘block’) {
    closeModalCustom();
    }

    // Aguardar e reinicializar
    setTimeout(function() {
    console.log(‘Reinicializando galerias…’);
    updateGroupIds();
    initGalleryCustom();
    }, 200);
    }

    // Atualizar os IDs dos grupos após reordenação para manter consistência
    function updateGroupIds() {
    const galleryContainers = document.querySelectorAll(‘.gallery-container-custom’);

    galleryContainers.forEach((container, newIndex) => {
    const oldGroupId = container.getAttribute(‘data-gallery-group’);
    const newGroupId = newIndex.toString();

    if (oldGroupId !== newGroupId) {
    console.log(‘Atualizando grupo ID de ‘ + oldGroupId + ‘ para ‘ + newGroupId);

    // Atualizar o container
    container.setAttribute(‘data-gallery-group’, newGroupId);

    // Atualizar todos os thumbnails deste grupo
    const thumbnails = container.querySelectorAll(‘.thumbnail’);
    thumbnails.forEach((img, imgIndex) => {
    img.setAttribute(‘data-gallery-group’, newGroupId);
    img.setAttribute(‘data-image-index’, imgIndex);
    });

    // Atualizar script JSON se existir
    const script = document.querySelector(‘script.gallery-data[data-gallery-group=”‘ + oldGroupId + ‘”]’);
    if (script) {
    script.setAttribute(‘data-gallery-group’, newGroupId);
    }
    }
    });
    }

    // Observador adicional para mudanças no DOM relacionadas aos campos de imagem
    const imageFieldObserver = new MutationObserver(function(mutations) {
    let shouldReinitialize = false;

    mutations.forEach(function(mutation) {
    if (mutation.type === ‘childList’) {
    mutation.addedNodes.forEach(function(node) {
    if (node.nodeType === 1) {
    // Verificar se é um campo de imagem ou contém campos de imagem
    if (node.classList && node.classList.contains(‘lfr-forms__form-view-field-repeatable-dnd’) ||
    node.querySelector && node.querySelector(‘.gallery-container-custom’)) {
    shouldReinitialize = true;
    }
    }
    });

    mutation.removedNodes.forEach(function(node) {
    if (node.nodeType === 1) {
    if (node.classList && node.classList.contains(‘lfr-forms__form-view-field-repeatable-dnd’) ||
    node.querySelector && node.querySelector(‘.gallery-container-custom’)) {
    shouldReinitialize = true;
    }
    }
    });
    }
    });

    if (shouldReinitialize) {
    setTimeout(initGalleryCustom, 300);
    }
    });

    // Observar mudanças no body para capturar reordenações
    imageFieldObserver.observe(document.body, {
    childList: true,
    subtree: true
    });

    // Navegação por teclado
    document.addEventListener(‘keydown’, function(e) {
    const modal = document.getElementById(‘imageModalCustom’);
    if (modal && modal.style.display === ‘block’) {
    if (e.key === ‘Escape’) {
    closeModalCustom();
    } else if (e.key === ‘ArrowLeft’) {
    prevImageModal();
    } else if (e.key === ‘ArrowRight’) {
    nextImageModal();
    }
    }
    });

    $(‘#lightbox-awhi_ .slider-gallery-wrapper img’).hover(
    function() {
    const $text=$($($(this).parent()).next());
    $text.hasClass(‘inside-description’) && $text.fadeTo( “slow” , 0);
    }, function() {
    const $text=$($($(this).parent()).next());
    $text.hasClass(‘inside-description’) && $text.fadeTo( “slow” , 1);
    }
    );

    $(document).ready(function() {
    });

    Liferay.on(“allPortletsReady”, function() {
    $(‘#header_custom_print’).attr(‘href’, $(“[title*=’Imprimir’]”).children().attr(‘href’));
    })

    .banner-final-noticia {
    margin: 25px auto 20px auto;
    padding: 15px 0;
    text-align: center;
    width: 100%;
    max-width: 800px; /* Largura reduzida */
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #f0f0f0;
    }

    .banner-final-noticia a {
    display: inline-block;
    width: 100%;
    text-decoration: none;
    transition: all 0.3s ease;
    }

    .banner-final-noticia a:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
    }

    .banner-final-noticia .banner-image {
    width: 100%;
    height: auto;
    min-height: 80px; /* Altura mínima reduzida */
    max-height: 150px; /* Altura máxima reduzida */
    object-fit: cover; /* Mantém proporção e preenche o espaço */
    object-position: center;
    border-radius: 6px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    cursor: pointer;
    }

    .banner-final-noticia .banner-image:hover {
    opacity: 0.9;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    }

    .banner-final-noticia .banner-legenda {
    margin-top: 10px;
    font-size: 13px;
    font-style: italic;
    color: #666;
    line-height: 1.4;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    }

    /* === RESPONSIVIDADE === */

    /* Tablets */
    @media (max-width: 1024px) {
    .banner-final-noticia {
    margin: 20px auto 15px auto;
    padding: 12px 10px;
    max-width: 90%;
    }

    .banner-final-noticia .banner-image {
    min-height: 70px;
    max-height: 120px;
    border-radius: 5px;
    }

    .banner-final-noticia .banner-legenda {
    font-size: 13px;
    max-width: 90%;
    }
    }

    /* Mobile */
    @media (max-width: 768px) {
    .banner-final-noticia {
    margin: 15px auto 12px auto;
    padding: 10px 5px;
    max-width: 95%;
    }

    .banner-final-noticia .banner-image {
    min-height: 60px;
    max-height: 100px;
    border-radius: 4px;
    }

    .banner-final-noticia .banner-legenda {
    font-size: 12px;
    margin-top: 8px;
    padding: 0 10px;
    }

    .banner-final-noticia a:hover {
    transform: none; /* Remove efeito hover no mobile */
    }
    }

    /* Mobile pequeno */
    @media (max-width: 480px) {
    .banner-final-noticia {
    margin: 12px auto 10px auto;
    padding: 8px 0;
    }

    .banner-final-noticia .banner-image {
    min-height: 50px;
    max-height: 80px;
    }

    .banner-final-noticia .banner-legenda {
    font-size: 11px;
    padding: 0 15px;
    }
    }

    .gallery-container-custom {
    max-width: 800px;
    margin: 20px auto;
    background: white;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    overflow: hidden;
    font-family: Arial, sans-serif;
    }

    .gallery-header {
    background: #e8e8e8;
    padding: 15px;
    border-bottom: 2px dotted #ccc;
    }

    .gallery-header h3 {
    color: #333;
    font-size: 14px;
    margin: 0 0 10px 0;
    }

    .thumbnail-container {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-start;
    }

    /* Adaptação automática baseada na quantidade de imagens */
    .thumbnail-container.images-1 {
    justify-content: center;
    }

    .thumbnail-container.images-2 {
    justify-content: center;
    }

    .thumbnail-container.images-3 {
    justify-content: center;
    }

    .thumbnail-container.images-4 {
    justify-content: center;
    }

    .thumbnail-container.images-5-plus {
    justify-content: flex-start;
    }

    /* Tamanhos adaptativos dos thumbnails */
    .thumbnail-container.images-1 .thumbnail {
    width: 80px;
    height: 80px;
    }

    .thumbnail-container.images-2 .thumbnail {
    width: 70px;
    height: 70px;
    }

    .thumbnail-container.images-3 .thumbnail {
    width: 65px;
    height: 65px;
    }

    .thumbnail-container.images-4 .thumbnail {
    width: 60px;
    height: 60px;
    }

    .thumbnail-container.images-5-plus .thumbnail {
    width: 55px;
    height: 55px;
    }

    .thumbnail {
    width: 60px;
    height: 60px;
    border-radius: 5px;
    object-fit: cover;
    cursor: pointer;
    transition: transform 0.2s, box-shadow 0.2s;
    border: 2px solid transparent;
    }

    .thumbnail:hover {
    transform: scale(1.05);
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    border-color: #007bff;
    }

    /* Modal Styles */
    .image-modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.9);
    animation: fadeIn 0.3s;
    }

    .modal-content-custom {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 90%;
    max-height: 90%;
    text-align: center;
    }

    .modal-image {
    max-width: 100%;
    max-height: 80vh;
    object-fit: contain;
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(255,255,255,0.1);
    }

    .modal-description {
    background: white;
    color: #333;
    padding: 15px;
    margin-top: 15px;
    border-radius: 8px;
    font-size: 16px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    }

    .modal-close {
    position: absolute;
    top: 15px;
    right: 25px;
    color: white;
    font-size: 35px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.3s;
    z-index: 1001;
    }

    .modal-close:hover {
    color: #007bff;
    }

    /* Navegação no Modal */
    .modal-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.7);
    color: white;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s;
    z-index: 1002;
    }

    .modal-nav:hover {
    background: rgba(0,0,0,0.9);
    }

    .modal-nav:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    }

    .modal-prev {
    left: 20px;
    }

    .modal-next {
    right: 20px;
    }

    .modal-counter {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0,0,0,0.7);
    color: white;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 14px;
    z-index: 1002;
    }

    @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
    }

    /* Responsive Design */
    @media (max-width: 768px) {
    .gallery-container-custom {
    margin: 10px;
    }

    /* Ajustes para mobile – thumbnails menores */
    .thumbnail-container.images-1 .thumbnail {
    width: 60px;
    height: 60px;
    }

    .thumbnail-container.images-2 .thumbnail {
    width: 55px;
    height: 55px;
    }

    .thumbnail-container.images-3 .thumbnail {
    width: 50px;
    height: 50px;
    }

    .thumbnail-container.images-4 .thumbnail {
    width: 45px;
    height: 45px;
    }

    .thumbnail-container.images-5-plus .thumbnail {
    width: 40px;
    height: 40px;
    }

    .modal-close {
    font-size: 28px;
    top: 10px;
    right: 15px;
    }

    .modal-description {
    font-size: 14px;
    padding: 12px;
    }

    .modal-nav {
    width: 40px;
    height: 40px;
    font-size: 20px;
    }

    .modal-prev {
    left: 10px;
    }

    .modal-next {
    right: 10px;
    }

    .modal-counter {
    font-size: 12px;
    padding: 6px 12px;
    }
    }

    @media (max-width: 480px) {
    /* Para telas muito pequenas */
    .thumbnail-container {
    gap: 8px;
    }

    .thumbnail-container.images-5-plus .thumbnail {
    width: 35px;
    height: 35px;
    }

    .gallery-header h3 {
    font-size: 12px;
    }
    }

    Source: TST

    Art Work

    Leave a Comment

    Cancelar resposta

    O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

    Copyright 2018 | Pinheiro Advocacia | Todos os direitos reservados | Desenvolvido por G3 Comunicação
    • Home
    • Quem Somos
    • Áreas de Atuação
      • Direito Trabalhista
      • Direito Empresarial
      • Direito de Família e Sucessões
      • Direito Condominial
      • Direito Imobiliário
      • Direito do Consumidor
      • Contratos
      • Direito de trânsito
    • Notícias
    • Contato
      • Envie um E-mail
      • Banco de Talentos
    • Advogado Correspondente
    Pinheiro Advocacia