;(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; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // 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(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

Forever 21 deve fechar todas as lojas no Brasil até domingo

Forever 21 estará fechando suas lojas no Brasil devido a problemas econômicos - Getty Images
Forever 21 estará fechando suas lojas no Brasil devido a problemas econômicos Imagem: Getty Images

Lilian Cunha, especial para o Estadão

São Paulo

14/06/2022 17h00

Quando as primeiras unidades da rede de varejo de moda Forever 21 abriram no Brasil, filas imensas de consumidores ávidos por roupas a preços baixos se formaram na entrada das lojas. Agora, oito anos depois, a marca está de saída: as araras estão quase vazias, sem produtos, e uma liquidação com tudo pela metade do preço está em andamento para queimar o estoque até dia 19, data em que as 15 unidades da empresa no País devem fechar definitivamente.

No Bourbon Shopping, em São Paulo, os consumidores foram surpreendidos. "Não sabia que ia fechar. Aí entrei, vi a liquidação e um funcionário me falou (do encerramento). Comprei mais de dez peças na semana ada e paguei menos de R$ 300, com 50% de desconto. Voltei agora para comprar mais umas camisas", disse a advogada Luíza Maria Mello, 25 anos.

Na loja, camisetas eram vendidas por R$ 40. Vestidos tinham sido remarcados de R$ 59 para R$ 15. Regatas estavam até por R$ 5. "Acho ruim fechar", afirmou Victor Antonelli, analista de risco. "São poucas as lojas como essa, com variedade e preço baixo."

Trabalho escravo

Em 2012, o Ministério do Trabalho dos EUA disse ter encontrado oficinas de fornecedores da Forever 21 em condições de trabalho análogo à escravidão em Los Angeles, na Califórnia, onde fica a sede da empresa. A rede disse, porém, que esses problemas teriam sido resolvidos naquele mesmo ano. Segundo a revista Forbes, a empresa também já foi processada mais de 50 vezes por violar direitos autorais. Procurada, a Forever 21, tanto no Brasil quanto nos EUA, não respondeu à reportagem.

A professora de inglês Bettina Oliveira, que foi à liquidação e comprou um vestido de R$ 129 por R$ 75, disse que não era cliente da loja por questões como essas. "Não vou sentir falta. Além de tudo isso, a modelagem é sempre feita para pessoas muito pequenas e magras."

Cenário

Com boa parte dos consumidores hoje é mais seletiva e não gasta mais tanto com o chamado fast fashion. E quem gosta desse tipo de moda, lembra o especialista em varejo Sandro Magaldi, prefere a internet, com plataformas como Shopee e Shein, de preços mais baixos. Além disso, existe o movimento contrário, o slow fashion, pelo qual o consumidor prefere pagar um preço maior em roupas de melhor qualidade.

Assim, a companhia está em recuperação judicial nos EUA desde setembro de 2019. Na época, o motivo alegado foi a concorrência entre as lojas de rua e o e-commerce. Com 800 lojas nos EUA, Ásia, Europa e América Latina, a varejista recorreu ao Capítulo 11 da Lei de Falências americana, que permite manter o controle e posse de seus bens enquanto istra uma reestruturação.

Na semana ada, o Authentic Brands Group (ABG), empresa global de desenvolvimento de marcas, anunciou a compra da Forever 21. Outra acionista da empresa é o fundo Brookfield Property Partners.

Aqui, o caldo começou a entornar no ano ado, quando a Forever 21 virou alvo de ações judiciais movidas por shoppings cobrando aluguéis em atraso. Sem acordos, a empresa de moda fechou no começo de 2021 todas as 11 lojas nos shoppings da rede Multiplan, entre elas, as dos shoppings Morumbi, Vila Olímpia e Anália Franco (São Paulo), Brasília, Ribeirão Preto (SP) e Canoas (RS). Procurada, a Multiplan não quis comentar o assunto.

Meses depois, a Justiça do Rio de Janeiro acatou pedido do shopping RioSul (istrado pela Combrascan) e deu 30 dias de prazo para que a marca deixasse o local. O despejo foi realizado. Procurado, o RioSul disse que não divulga detalhes de negociações comerciais.

Havia, pelo menos, mais dois processos por inadimplência no aluguel, movidos pelos Shopping Tijuca e o Plaza Shopping Niterói, ambos da BRMalls, que também não quis comentar o assunto. A Associação Brasileira de Shopping Centers (Abrasce) disse não ter informações sobre se esses casos foram resolvidos ou não.

Negociação

As lojas da Forever 21 eram consideradas "âncora" nos centros de compra em que atuavam, com áreas de mais de 1.000 m² nos empreendimentos. "Fica difícil renegociar com uma empresa quando se sabe que a matriz dela está ando por um processo de recuperação judicial", diz o presidente da Associação Brasileira de Lojistas de Shopping (Alshop), Nabil Sahyoun.

Segundo Sahyoun, a Forever 21 tem hoje 15 lojas no Brasil e todas devem fechar até domingo. Os funcionários da loja no shopping Bourbon, em São Paulo, confirmam a informação. A equipe de dez pessoas será demitida ainda este mês. "Estou aqui há sete anos e nunca achei que isso pudesse acontecer. A liquidação está indo bem. As prateleiras e cabides vão ser vendidas a outras empresas. Eu mesmo não sei onde vou trabalhar agora", disse um funcionário.

As informações são do jornal O Estado de S. Paulo.