Skip to content

360º de exclusividade. 360º de identidade.

Log in Cart
00 items

Language

  • pt-PT
  • fr
  • en
  • es

Currency

USD EUR GBP CHF
Fitness360º
  • Produtos
  • <tc>Free weight</tc>
  • Functional training
  • <tc>Sports</tc>
Cart
00 items
Fitness360º
Log in
Cart
00 items

O Seu Ginásio, a Nossa Visão 3D

Na Fitness360, sabemos que cada espaço tem o seu potencial único. Os nossos projetos 3D para ginásios transformam a sua visão em realidade, permitindo-lhe otimizar cada metro quadrado para funcionalidade, estética e a melhor experiência para os seus clientes. Desde a disposição dos equipamentos à criação de ambientes envolventes, a nossa equipa especializada projeta espaços que inspiram e motivam. Conheça o futuro do seu ginásio, hoje.

A Liberdade de Escolha para o Seu Ginásio

Na Fitness360, compreendemos que cada ginásio tem necessidades e preferências únicas. Por isso, oferecemos soluções multimarca para equipamentos, dando-lhe a liberdade de escolher entre as melhores marcas do mercado. Quer procure a durabilidade de uma marca específica ou a inovação de outra, nós ajudamo-lo a construir o seu espaço de sonho com equipamentos que se ajustam perfeitamente ao seu orçamento e objetivos. Qualidade, variedade e a nossa expertise para o seu sucesso.

A Solução Completa para o Seu Ginásio, Sem Limites

Na Fitness360, sabemos que cada ginásio é único e os desafios são tão variados quanto as oportunidades. Por isso, as nossas soluções vão muito além dos projetos 3D e dos equipamentos multimarca. Somos o parceiro ideal para qualquer tipo de ginásio, desde o pequeno estúdio boutique à grande cadeia de fitness. Oferecemos um acompanhamento completo, desde a consultoria inicial à implementação e manutenção, garantindo que o seu espaço não só cumpre as expectativas, mas as supera. Conte com a Fitness360 para transformar a sua visão em realidade, independentemente da dimensão ou complexidade do seu projeto. O seu sucesso é a nossa missão!

Fitness360.shop | Tudo para o teu treino. Em casa, no ginásio, em qualquer lado.

Fitness360.shop | Tudo para o teu treino. Em casa, no ginásio, em qualquer lado.

Pagamento à cobrança

30 dias de devolução

Pagamento seguro

Pagamento fracionado com seQura

Pagamento à cobrança

30 dias de devolução

Pagamento seguro

Pagamento fracionado com seQura

Pagamento à cobrança

30 dias de devolução

Pagamento seguro

Pagamento fracionado com seQura

Contactos

Fitness360º

Rua José Afonso, 5A, Laranjeiras, 1600-130 Lisboa

geralfitness360@gmail.com

Apoio ao cliente

  • Who we are
  • Contacts
  • Shipping and Returns
  • Refund Policy
  • Privacy Policy
  • Service Terms
  • Complaint book
  • Pagamento Fraccionado com SeQura

Categorias

  • Cardio
  • Musculação
  • Acessórios

Subscreve a newsletter

Assine e receba o nosso e-book "15 melhores ginásios em casa (para sua inspiração)".

  • Início
  • Pesquisar
  • Conta
  • Carrinho
    00 items
  • Colecções
  • Choosing a selection results in a full page refresh.

Thanks for subscribing!

This email has been registered!

Shop the look

Choose Options

Edit Option
Back In Stock Notification
this is just a warning
Login
Forgot your password? Create account
Shopping Cart
0 items
Close
Search
Menu
Sign In Create an Account
/** * SOLUÇÃO DEFINITIVA: Shopify + Ella + Customily * Foca em Observação de URL e Sincronização de Slider */ (function() { const CONFIG = { selectors: { mainImg: '.product-single__photo img, .featured-image', thumbnails: '.product-single__thumb img, .slider-nav img', canvas: '#customily-canvas', swatches: '.swatch-element, .single-option-selector' }, debounceTime: 100 }; function getVariantFromUrl() { const urlParams = new URLSearchParams(window.location.search); const variantId = urlParams.get('variant'); if (!variantId || !window.product) return null; return window.product.variants.find(v => v.id == variantId); } function hasCustomilyDesign() { const canvasContainer = document.querySelector(CONFIG.selectors.canvas); // Verifica se o Customily injetou algo além do placeholder return canvasContainer && canvasContainer.children.length > 0; } function syncEllaSlider(imageUrl) { if (!imageUrl) return; // Remove parâmetros de redimensionamento do Shopify para comparação limpa const cleanUrl = (url) => url.split('?')[0].replace(/(_\d+x\d+|_master|_small)/g, ''); const targetBase = cleanUrl(imageUrl); const thumbnails = document.querySelectorAll(CONFIG.selectors.thumbnails); for (let thumb of thumbnails) { const thumbSrc = thumb.getAttribute('src') || thumb.getAttribute('data-src'); if (thumbSrc && cleanUrl(thumbSrc).includes(targetBase)) { // Em vez de só trocar o SRC, simulamos o clique para o Ella mover o Slider (Slick/Swiper) thumb.click(); return true; } } return false; } const updateUI = debounce(() => { if (hasCustomilyDesign()) return; const variant = getVariantFromUrl(); if (!variant || !variant.featured_image) return; // 1. Atualiza Imagem Principal (Fallback caso o slider falhe) const mainImg = document.querySelector(CONFIG.selectors.mainImg); if (mainImg) mainImg.src = variant.featured_image.src; // 2. Sincroniza Slider/Thumbs syncEllaSlider(variant.featured_image.src); }, CONFIG.debounceTime); // --- OBSERVADORES --- // 1. Monitora mudanças na URL (Troca de variante via Swatches ou Selects) let lastUrl = location.href; const urlObserver = new MutationObserver(() => { if (location.href !== lastUrl) { lastUrl = location.href; updateUI(); } }); urlObserver.observe(document.querySelector('body'), { childList: true, subtree: true }); // 2. Monitora o Customily (Aparecimento/Desaparecimento do Design) const canvasElement = document.querySelector(CONFIG.selectors.canvas); if (canvasElement) { const customilyObserver = new MutationObserver(() => { // Se o design sumiu, restauramos a variante if (!hasCustomilyDesign()) updateUI(); }); customilyObserver.observe(canvasElement, { childList: true, subtree: true }); } // Helper: Debounce function debounce(fn, ms) { let timeout; return () => { clearTimeout(timeout); timeout = setTimeout(() => fn.apply(this, arguments), ms); }; } // Execução inicial setTimeout(updateUI, 500); })();
Cannot place order, conditions not met:
OK