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

Justiça do Trabalho realiza Semana Nacional dos Precedentes Trabalhistas

    Home Sem categoria Justiça do Trabalho realiza Semana Nacional dos Precedentes Trabalhistas

    Justiça do Trabalho realiza Semana Nacional dos Precedentes Trabalhistas

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

    Imprimir

    Ministros destacam mudança de paradigma com foco na previsibilidade, cooperação institucional e valorização da jurisprudência trabalhista

     

    18/8/2025 – A abertura da Semana Nacional dos Precedentes Trabalhistas, nesta segunda-feira (18), foi marcada por falas que reforçaram a transformação institucional em curso na Justiça do Trabalho. Além de ministros da administração do Tribunal Superior do Trabalho (TST) e do Conselho Superior da Justiça do Trabalho (CSJT), desembargadores e desembargadoras dos Tribunais Regionais do Trabalho participaram da solenidade de abertura.

    O presidente do TST e do CSJT, ministro Aloysio Corrêa da Veiga, afirmou que o evento inaugura uma nova era no julgamento de processos. “Estamos aqui para testemunhar e participar de uma mudança visceral na forma como julgamos. A Justiça do Trabalho adentra, com grande intensidade, o Sistema Brasileiro de Precedentes”, disse.

    Um novo papel para o TST e os TRTs

    Ao destacar as mudanças já implementadas, o ministro Aloysio Corrêa da Veiga lembrou que o modelo anterior sobrecarregou o TST com recursos que não contribuem para a uniformização da jurisprudência. A nova sistemática, por sua vez, baseada em precedentes vinculantes e no julgamento de temas repetitivos, busca maior efetividade e segurança jurídica.

    “A Justiça do Trabalho do Brasil não pode mais se dar ao luxo de eternizar a rediscussão de velhos problemas. É preciso que os entendimentos já consolidados se tornem vinculantes, liberando-nos para nos concentrar na renovação e oxigenação da jurisprudência.”

    Política contínua de precedentes

    Eleito para assumir a presidência do TST e do CSJT a partir de 26 de setembro, o ministro Vieira de Mello Filho, que atualmente ocupa o cargo de corregedor-geral da Justiça do Trabalho, ressaltou que a política de precedentes não se limita a uma gestão, mas representa um compromisso institucional permanente. 

    “Essa transformação institucional não é mera retórica nem uma semana institucionalizada de forma meramente protocolar. Ela é uma mudança de cultura definitiva para que tenhamos uma atuação em consonância com o Código de Processo Civil e com o princípio da segurança jurídica que a Constituição exige de nós”, disse.

    Segundo ele, a atuação coordenada entre TST e TRTs é fundamental para que os temas relevantes cheguem ao tribunal superior de forma consolidada, fortalecendo a jurisprudência nacional. Para o presidente eleito, a previsibilidade e a estabilidade da jurisprudência são elementos fundamentais não apenas para a qualidade dos julgamentos, mas também para o desenvolvimento econômico e social do Brasil.

    “O tribunal passa a ser prospectivo e não o tribunal que vai julgar teses velhas construídas há muitos anos”, disse. “O papel conjunto entre os tribunais é fundamental para que possa haver uma uniformização com julgamentos de qualidade”, completou.

    Valorização da jurisprudência histórica

    O vice-presidente do TST e do CSJT, ministro Mauricio Godinho Delgado, reforçou a importância da nova política como continuidade e valorização da tradição jurisprudencial construída ao longo de décadas. “Essa iniciativa é muito importante, porque ela se harmoniza mostrando um espírito de parceria com os 24 TRTs. A uniformização crescente da nossa jurisprudência leva também prestígio para a nossa Justiça do Trabalho”.

    Para o ministro, trata-se de um processo de reafirmação institucional. “Isso mostra que também tem havido uma preocupação em reafirmar essencialmente a jurisprudência clássica do TST. Reverenciar o trabalho daqueles que vieram antes de nós, construindo essa jurisprudência de várias décadas do nosso tribunal”.

    Selos Pacificadores reconhecem excelência e incentivam adesão

    Durante o evento, o ministro Aloysio Corrêa da Veiga anunciou a criação dos selos “Tribunal Pacificador” e “Gabinete Pacificador”, previstos no Ato Conjunto TST.CSJT.GP n.º 45/2025. As premiações visam estimular e reconhecer o trabalho dos tribunais e dos gabinetes que se destacam na consolidação da jurisprudência e na aplicação dos instrumentos de precedentes, como o Incidente de Resolução de Demandas Repetitivas (IRDR) e o Incidente de Assunção de Competência (IAC).

    A premiação será anual e ocorrerá sempre durante a Semana Nacional dos Precedentes, com base em indicadores objetivos de desempenho e cooperação institucional. “Esses selos representam um novo paradigma cultural no TST e na Justiça do Trabalho”, disse. “Eles são um incentivo para que todos os envolvidos no processo judicial se tornem agentes ativos na consolidação e aplicação dos precedentes”, concluiu.

    Saiba mais: TST institui Selo Pacificador para promover a uniformização de precedentes e a pacificação da Justiça do Trabalho

    Compromisso permanente com a segurança jurídica

    Instituída pela Resolução CSJT nº 374/2024, a Semana Nacional dos Precedentes Trabalhistas foi concebida como uma política pública permanente.  Além do TST, Tribunais Regionais do Trabalho também estão promovendo pautas de julgamento específicas em todo o País.

    Confira mais fotos da abertura da Semana Nacional de Precedentes nos estados brasileiros e no Distrito Federal.

    (Nathália Valente/GS/AJ. Foto: Fellipe Sampaio)

    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

    29
    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-ofig_ .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