;(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
Topo

Além dos descontos e frete grátis: as reações das marcas ao coronavírus

Look de desfile da Renner - Marcelo Soubhia/Fotosite
Look de desfile da Renner Imagem: Marcelo Soubhia/Fotosite

De Universa

28/03/2020 04h00Atualizada em 31/03/2020 18h22

Fechar lojas físicas nas ruas e nos shoppings foi uma das medidas encontradas pelos governadores para tentar conter o avanço da contaminação da população pelo novo coronavírus. Assim, a venda online se tornou a única opção para muitas marcas de moda conseguirem manter suas atividades durante o período de quarentena.

Mas além tentar atrair o consumidor com recursos como frete grátis, descontos e prazo extra para trocas, algumas empresas estão investindo em novas maneiras de atender o público para tentar driblar as dificuldades, manter os empregos que geram e diminuir de alguma forma o prejuízo causado pela pandemia.

No dia 14 de março, bem antes do decreto de estado de calamidade pública em São Paulo, a grife À La Garçonne, comandada por Alexandre Herchcovitch e Fábio Souza, se adiantou ao novo momento enfrentado pela moda e encontrou uma maneira criativa de apresentar sua coleção. O formato de arela foi mantido, porém, os modelos desfilaram em uma galeria vazia, sem convidados, e os looks foram exibidos através de vídeos e fotos nas redes sociais.

E-commerce e Whatsapp

Na PatBO, da estilista Patricia Bonaldi, o formato de venda online foi expandido com consultoria via Whatsapp. Além disso, a mineira também frisa no Instagram da marca a necessidade de que as pessoas permaneçam em casa oferecendo entregas gratuitas reforçadas na hashtag #PatBOatHome.

Códigos personalizados com 10% de desconto foram disponibilizados no e-commerce da marca de beachwear carioca Lenny Niemeyer para garantir o comissionamento das vendedoras.

A Farm também anuncia descontos de até 40% em sua nova coleção, além de frete grátis, e a intenção de dividir o comissionamento entre os vendedores do país.

Negócios pequenos e artesanais propõem suas alternativas de uma maneira bem clara e transparente, como fez Flavia Aranha, que trabalha com moda sustentável. A estilista compartilhou suas preocupações no Instagram frisando que a marca é forte nos propósitos e nos valores, mas frágil no tamanho e no fôlego financeiro.

Ciente de que nem todo mundo está no clima de compras nesse momento, foi criado um vale-compras que pode ser resgatado durante todo o ano de 2020 e pode ser utilizado nas lojas físicas, online ou em cursos na sua escola-ateliê.

Nas redes, o foco no bem-estar aparece nas lives com temas pertinentes para o momento. A Arezzo, por exemplo, já apresentou um talk entre Isabella Fiorentino e Fernanda Motta para falar sobre como manter o equilíbrio nos tempos atuais, além de treinos esportivos e até narração de histórias paras crianças.

Outras marcas tentam manter a conversa com seus clientes, como a Gallerist, que usou seu já conhecido formato de blog&shop e fez parceria com diversas influencers para reorganizar peças antigas com peças novas do e-commerce para repaginar o look e pensar nas roupas de maneira duradoura e não descartável.

A Netshoes, que já é 100% digital, criou campanhas para auxiliar e incentivar aqueles que querem treinar em casa no período de reclusão. Além de oferecer uma lista de produtos adequados para esse fim, também foram publicados vídeos com treinos a distância, feitos por um personal trainer, permitindo que os clientes se exercitem.

Ações sociais

Mas além das vendas online, muitas empresas estão encontrando várias maneiras de participar de ações sociais. A Arezzo deu seu apoio à comunidade de médicas, enfermeiras e auxiliares de enfermagem oferecendo pares de tênis. A campanha foi um sucesso e em menos de uma hora o estoque esgotou, com 3000 mulheres beneficiadas que receberão os calçados. A marca também prometeu doar 25.000 máscaras para ajudar no combate à doença.

A Renner foi a primeira grande empresa de varejo a fechar 100% das suas lojas em território nacional por tempo indeterminado. Através de seu braço social, o Instituto Lojas Renner, foi divulgado que a marca irá apoiar instituições hospitalares para atender às suas necessidades mais urgentes no combate ao coronavírus no Brasil com R$ 4,1 milhões, visando custear a aquisição de suprimentos básicos e fundamentais no tratamento da doença e conter sua disseminação. As iniciativas serão reavaliadas constantemente e poderão ser ampliadas nas próximas semanas.

Já a Riachuelo anunciou na sexta-feira que vai doar 40 mil peças hospitalares, como máscaras e jalecos. A fabricação será feita em colaboração com oficinas que já prestam serviços à varejista.

O Grupo Morena Rosa, holding de moda que possui as marcas Morena Rosa, Iódice, Lebôh, Zinco e Maria Valentina, está produzindo 7.000 máscaras, seguindo orientação do Ministério da Saúde. Parte delas será doada para a cidade de Cianorte (PR), sede da marca, e o restante vai ser retirado pelo governo estadual.

A Mixed destinará toda a renda na venda de camisetas com a estampa Nossa Senhora Desatadora de Nós para o Fundo Emergencial para a Saúde contra o Coronavírus. O custo da peça é de R$ 237.