(function () { /* ===================================================== LIGHTING & CO. PÁGINA DE PRODUTO - coração nos relacionados mobile - 4 miniaturas visíveis no desktop - navegação vertical ===================================================== */ /* ===================================================== CORAÇÃO DOS PRODUTOS RELACIONADOS ===================================================== */ function prepararCoracoesRelacionados() { const cards = document.querySelectorAll( 'body.pagina-produto ' + '#corpo ' + '.listagem.aproveite-tambem ' + '.listagem-item' ); if (!cards.length) { return false; } cards.forEach(function (card) { const preco = card.querySelector( '.preco-produto' ); if (!preco) { return; } /* * Não duplica. */ if ( preco.querySelector( '.relacionados-coracao' ) ) { return; } /* * Procura algum controle de favoritos * nativo que já exista no card. */ const favoritoNativo = card.querySelector( 'a[href*="favorito"], ' + '.adicionar-favorito, ' + '.botao-favorito, ' + '[class*="favorito"]' ); let coracao; /* * Se o tema já possui um link real de favorito, * preservamos o href. */ if ( favoritoNativo && favoritoNativo.tagName === 'A' && favoritoNativo.href ) { coracao = document.createElement( 'a' ); coracao.href = favoritoNativo.href; } else { coracao = document.createElement( 'button' ); coracao.type = 'button'; /* * Se existir botão nativo, * repassa o clique para ele. */ if (favoritoNativo) { coracao.addEventListener( 'click', function (event) { event.preventDefault(); event.stopPropagation(); favoritoNativo.click(); } ); } } coracao.className = 'vitrine-coracao relacionados-coracao'; coracao.setAttribute( 'aria-label', 'Adicionar aos favoritos' ); coracao.setAttribute( 'title', 'Adicionar aos favoritos' ); preco.appendChild( coracao ); }); return true; } /* ===================================================== GALERIA VERTICAL DESKTOP FIGMA 166:2968 ===================================================== */ function prepararGaleriaVertical() { const thumbs = document.querySelector( 'body.pagina-produto ' + '#corpo ' + '.produto ' + '.produto-thumbs' ); if (!thumbs) { return false; } const carousel = thumbs.querySelector( '#carouselImagem' ) || thumbs; const viewport = thumbs.querySelector( '.flex-viewport' ); const track = thumbs.querySelector( 'ul.miniaturas.slides' ); if ( !viewport || !track ) { return false; } /* * Não instala duas vezes. */ if ( track.dataset .galeriaVerticalPronta === '1' ) { return true; } track.dataset .galeriaVerticalPronta = '1'; let indice = 0; /* ================================================= BOTÃO SUPERIOR ================================================= */ const anterior = document.createElement( 'button' ); anterior.type = 'button'; anterior.className = 'produto-thumbs-prev'; anterior.setAttribute( 'aria-label', 'Miniatura anterior' ); anterior.innerHTML = ''; /* ================================================= BOTÃO INFERIOR ================================================= */ const proximo = document.createElement( 'button' ); proximo.type = 'button'; proximo.className = 'produto-thumbs-next'; proximo.setAttribute( 'aria-label', 'Próxima miniatura' ); proximo.innerHTML = ''; carousel.appendChild( anterior ); carousel.appendChild( proximo ); /* ================================================= PEGA MINIATURAS REAIS ignora clones caso FlexSlider crie algum ================================================= */ function obterItens() { return Array .from(track.children) .filter(function (item) { return ( item.tagName === 'LI' && !item.classList.contains( 'clone' ) ); }); } /* ================================================= GAP REAL ENTRE AS MINIATURAS ================================================= */ function obterGap() { const estilo = window.getComputedStyle( track ); const valor = parseFloat( estilo.rowGap || estilo.gap ); return Number.isFinite(valor) ? valor : 12; } /* ================================================= CALCULA ALTURA DE EXATAMENTE 4 SEM ALTERAR A DIMENSÃO DAS IMAGENS ================================================= */ function calcularAlturaVisivel( itens, gap ) { const quantidade = Math.min( 4, itens.length ); let altura = 0; for ( let i = 0; i < quantidade; i++ ) { altura += itens[i] .getBoundingClientRect() .height; if ( i < quantidade - 1 ) { altura += gap; } } return altura; } /* ================================================= CALCULA DESLOCAMENTO ================================================= */ function calcularOffset( itens, gap ) { let offset = 0; for ( let i = 0; i < indice; i++ ) { offset += itens[i] .getBoundingClientRect() .height; offset += gap; } return offset; } /* ================================================= ATUALIZA ================================================= */ function atualizar() { const itens = obterItens(); if (!itens.length) { return; } /* * MOBILE: * volta ao comportamento horizontal. */ if ( window.innerWidth <= 1024 ) { indice = 0; thumbs.style .removeProperty( '--produto-thumbs-altura' ); thumbs.style .removeProperty( '--produto-thumbs-offset' ); anterior.hidden = true; proximo.hidden = true; return; } const gap = obterGap(); const altura = calcularAlturaVisivel( itens, gap ); thumbs.style.setProperty( '--produto-thumbs-altura', altura + 'px' ); const maximo = Math.max( 0, itens.length - 4 ); /* * Garante índice válido. */ indice = Math.max( 0, Math.min( indice, maximo ) ); const offset = calcularOffset( itens, gap ); thumbs.style.setProperty( '--produto-thumbs-offset', (-offset) + 'px' ); /* * Só mostra setas se existirem * mais de quatro imagens. */ const precisaCarousel = itens.length > 4; anterior.hidden = !precisaCarousel; proximo.hidden = !precisaCarousel; anterior.disabled = indice === 0; proximo.disabled = indice >= maximo; } /* ================================================= CLIQUE CIMA ================================================= */ anterior.addEventListener( 'click', function (event) { event.preventDefault(); event.stopPropagation(); if ( indice <= 0 ) { return; } indice--; atualizar(); } ); /* ================================================= CLIQUE BAIXO ================================================= */ proximo.addEventListener( 'click', function (event) { event.preventDefault(); event.stopPropagation(); const itens = obterItens(); const maximo = Math.max( 0, itens.length - 4 ); if ( indice >= maximo ) { return; } indice++; atualizar(); } ); /* ================================================= RESIZE ================================================= */ window.addEventListener( 'resize', atualizar ); /* * Espera imagens/medidas terminarem. */ requestAnimationFrame( function () { setTimeout( atualizar, 100 ); } ); return true; } /* ===================================================== INICIALIZAÇÃO Loja Integrada pode montar componentes depois ===================================================== */ function iniciar() { prepararCoracoesRelacionados(); prepararGaleriaVertical(); } if ( document.readyState === 'loading' ) { document.addEventListener( 'DOMContentLoaded', iniciar ); } else { iniciar(); } /* * Tenta novamente porque FlexSlider e vitrines * podem ser inicializados depois do DOMContentLoaded. */ let tentativas = 0; const intervalo = setInterval( function () { tentativas++; prepararCoracoesRelacionados(); const galeriaPronta = prepararGaleriaVertical(); if ( galeriaPronta || tentativas >= 40 ) { clearInterval( intervalo ); } }, 250 ); })();
A Coluna Sfera Golden Art Iluminação foi desenvolvida para projetos que valorizam design escultural, sofisticação estética e iluminação decorativa de alto padrão. Seu grande diferencial está na cúpula esférica em latão com diâmetro de 25cm, que cria uma iluminação envolvente e elegante, atuando como verdadeiro elemento de destaque no ambiente.
Produzida integralmente em latão, material nobre amplamente utilizado em luminárias premium, a Coluna Sfera apresenta acabamento refinado, elevada durabilidade e excelente valorização arquitetônica. Com 150cm de altura, possui proporção equilibrada para integração harmoniosa em ambientes amplos e sofisticados.
Compatível com 2 lâmpadas G9, a Coluna Sfera oferece iluminação eficiente e bem distribuída, ideal para salas de estar, lounges, halls, hotéis, recepções e projetos residenciais ou comerciais de alto padrão. Sua estética atemporal permite integração em propostas contemporâneas, modernas ou clássicas.
coluna de iluminação com cúpula, coluna decorativa golden art, iluminação decorativa de luxo, coluna de piso em latão, luminária de piso com cúpula esférica, luminária G9 decorativa, iluminação para projetos arquitetônicos, luminária coluna premium
A Lighting & Co. é especialista em luminárias de luxo, lustres e peças exclusivas que combinam design, sofisticação e funcionalidade. Ilumine seus ambientes com estilo e valor agregado.