[{"data":1,"prerenderedAt":1863},["ShallowReactive",2],{"case-\u002Ftrabalhos\u002Fhair-glow-izadora-k":3,"cases-casesPt-all-0":249},{"id":4,"title":5,"body":6,"cover":224,"coverAlt":225,"description":206,"draft":226,"extension":227,"featured":226,"headline":228,"meta":229,"navigation":230,"order":207,"path":231,"period":232,"platform":233,"role":234,"seo":235,"stem":236,"summary":237,"tags":238,"tldr":244,"__hash__":248},"casesPt\u002Ftrabalhos\u002Fhair-glow-izadora-k.md","Hair Glow — landing page de lançamento",{"type":7,"value":8,"toc":205},"minimark",[9,14,18,26,30,33,40,43,46,50,66,69,73,84,87,93,99,105,109,114,117,120,124,130,138,142,148,151,155,161,164,167,171,174,178,181,184,188,191,194,198],[10,11,13],"h2",{"id":12},"contexto","Contexto",[15,16,17],"p",{},"O Hair Glow é um fluido 5 em 1 de 260 ml da linha \"Toda beleza de mãe\", assinada\npela Izadora K. O produto entrava em lançamento e não tinha uma página própria: a\núnica superfície de venda eram posts de rede social, que dão alcance mas não dão\nargumento.",[15,19,20,21,25],{},"Meu escopo aqui foi específico e vale dizer de saída: ",[22,23,24],"strong",{},"UI e protótipo",". A copy\nveio pronta, de um documento de página de vendas escrito pelo cliente. Meu trabalho\nnão foi decidir o que dizer — foi decidir em que ordem, com quanto peso e em quanto\nespaço cada coisa é dita.",[10,27,29],{"id":28},"o-problema","O problema",[15,31,32],{},"O público da linha é mulher com rotina cheia, e esse é o dado que muda tudo. Ela não\nlê uma página de produto do começo ao fim. Ela rola, para em uma frase, e decide.",[15,34,35],{},[36,37],"img",{"alt":38,"src":39},"Seção que nomeia a dor: \"Cansada de testar cuidados capilares que não cabem na sua rotina?\", com o produto sobre uma bancada de madeira ao lado de uma escova e uma chapinha","\u002Fimages\u002Fcases\u002Fhair-glow-dor.jpg",[15,41,42],{},"Isso cria uma tensão concreta de layout. O produto tem cinco benefícios — hidratação,\nproteção térmica, controle de frizz, antipoluição, pré e pós-treino — e cinco\nbenefícios é exatamente a quantidade que vira ruído quando apresentada como lista.\nUma página que abre despejando os cinco perde a leitora antes do terceiro.",[15,44,45],{},"O outro problema é que o argumento real do produto não é técnico. É tempo. \"Cinco\nem um\" só significa alguma coisa para quem entende que são cinco frascos e cinco\netapas a menos na pia do banheiro.",[10,47,49],{"id":48},"meu-papel","Meu papel",[51,52,53,57,60,63],"ul",{},[54,55,56],"li",{},"Estrutura e ordem das seções da página",[54,58,59],{},"UI de desktop (1440) e mobile (375)",[54,61,62],{},"Adaptação responsiva de todas as seções",[54,64,65],{},"Protótipo navegável e organização do arquivo para handoff",[15,67,68],{},"Copy, direção de arte e fotografia vieram do cliente.",[10,70,72],{"id":71},"processo","Processo",[15,74,75,76,79,80,83],{},"A base foi o ",[22,77,78],{},"Creators Figma Kit"," somado ao ",[22,81,82],{},"UI Kit Braip"," e a componentes do\nRelume. Isso não é detalhe de bastidor: com o esqueleto de componentes pronto, o\ntempo que iria para desenhar caixas foi inteiro para a decisão editorial — que\nseção existe, em que ordem, com quanta respiração.",[15,85,86],{},"O trabalho ficou em três frentes:",[15,88,89,92],{},[22,90,91],{},"Ordenar."," Cada seção da página responde a uma pergunta, e a pergunta seguinte só\naparece depois que a anterior foi respondida. Promessa, dor, como funciona, prova,\npreço, dúvida.",[15,94,95,98],{},[22,96,97],{},"Dosar."," Onde a copy dava margem, o layout escolheu densidade. Os cinco benefícios\nviraram uma coluna de itens curtos ao lado da imagem do produto — leitura vertical\nrápida, nenhum deles competindo por destaque.",[15,100,101,104],{},[22,102,103],{},"Adaptar."," Onze seções de 1440 px reconstruídas para 375. A adaptação não foi\nempilhamento: as duas colunas do bloco de benefícios viram uma sequência, e o\ncomparativo de kits, que no desktop é lado a lado, no mobile passa a ser decisão\nsequencial.",[10,106,108],{"id":107},"decisões-chave","Decisões-chave",[110,111,113],"h3",{"id":112},"a-dor-antes-do-benefício","A dor antes do benefício",[15,115,116],{},"A segunda seção da página não fala do produto. Ela pergunta: \"cansada de testar\ncuidados capilares que não cabem na sua rotina?\" e nomeia frizz, ressecamento e\ndano de secador antes de oferecer qualquer solução.",[15,118,119],{},"É deliberado. Uma leitora que ainda não reconheceu o problema não tem onde encaixar\na resposta. A seção de benefícios que vem logo depois funciona melhor porque chega\ncomo alívio, não como catálogo.",[110,121,123],{"id":122},"cinco-benefícios-como-um-passo-não-como-cinco","Cinco benefícios como um passo, não como cinco",[15,125,126],{},[36,127],{"alt":128,"src":129},"Seção \"Cinco benefícios em um único passo\" — lista vertical de hidratação, proteção térmica, controle do frizz, antipoluição e pré e pós-treino, ao lado do produto sobre fundo de folhagem","\u002Fimages\u002Fcases\u002Fhair-glow-beneficios.jpg",[15,131,132,133,137],{},"O título carrega o argumento inteiro: ",[134,135,136],"em",{},"cinco benefícios em um único passo",". Os itens\nficam em uma coluna estreita, com texto curto e sem ícone decorativo — a hierarquia\ndiz que o importante é o \"um único passo\", e que os cinco são a prova disso, não o\nprotagonista.",[110,139,141],{"id":140},"prova-por-contexto-não-por-close-de-produto","Prova por contexto, não por close de produto",[15,143,144],{},[36,145],{"alt":146,"src":147},"Seção \"Autoestima para todos os momentos\" — quatro cartões de estilo de vida mostrando o produto em situações reais do dia","\u002Fimages\u002Fcases\u002Fhair-glow-lifestyle.jpg",[15,149,150],{},"A seção de lifestyle mostra o produto em quatro situações de rotina em vez de quatro\nângulos do frasco. Cada cartão liga uma cena a um benefício já apresentado — a\nacademia amarra no pré e pós-treino, a chapinha amarra na proteção térmica.",[110,152,154],{"id":153},"duas-opções-nunca-três","Duas opções, nunca três",[15,156,157],{},[36,158],{"alt":159,"src":160},"Seção de oferta — dois kits lado a lado, o combo de duas unidades por R$ 197,00 e a unidade avulsa por R$ 137,00, com selo de oferta de lançamento","\u002Fimages\u002Fcases\u002Fhair-glow-oferta.jpg",[15,162,163],{},"A oferta apresenta exatamente dois caminhos: o kit com duas unidades e a unidade\navulsa. O combo entra à esquerda, com o selo de lançamento e o preço riscado\nvisível, para que a comparação aconteça sem que a leitora precise fazer conta.",[15,165,166],{},"Três opções teriam transformado uma decisão de compra em uma tarefa de planilha.",[110,168,170],{"id":169},"marquee-como-respiro","Marquee como respiro",[15,172,173],{},"Entre os blocos densos há três faixas horizontais finas com as condições de compra —\ncompra 100% segura, frete grátis, garantia. Elas resolvem dois problemas ao mesmo\ntempo: dão pausa visual entre seções longas e mantêm as objeções logísticas presentes\nsem gastar uma seção inteira com elas.",[10,175,177],{"id":176},"resultado","Resultado",[15,179,180],{},"A landing page foi entregue completa nos dois breakpoints, com protótipo navegável e\no arquivo organizado para handoff — seções nomeadas, componentes instanciados a\npartir do kit, versão registrada no changelog do arquivo.",[15,182,183],{},"Não tenho número de conversão para mostrar. A página foi entregue no lançamento e a\nmétrica ficou do lado do cliente; publicar um percentual que eu não medi seria pior\nque não ter nenhum.",[10,185,187],{"id":186},"o-que-ficou-pendente","O que ficou pendente",[15,189,190],{},"A seção de depoimentos está no layout, mas ainda com texto de placeholder. O\nconteúdo real — nomes, fotos e falas de clientes — dependia de coleta que não estava\npronta no fechamento do design.",[15,192,193],{},"Deixo isso escrito porque a alternativa seria mostrar um print de prova social\ninventada em um case sobre uma página de venda, o que é exatamente o tipo de coisa\nque a página inteira foi desenhada para não fazer.",[10,195,197],{"id":196},"o-que-eu-faria-diferente","O que eu faria diferente",[15,199,200,201,204],{},"Teria desenhado a seção de depoimentos ",[22,202,203],{},"depois"," do conteúdo existir, não antes. Um\nbloco de prova social projetado sobre lorem ipsum assume um formato — cinco cartões\ncurtos, todos do mesmo tamanho — que o depoimento real quase nunca respeita. Quando\no texto verdadeiro chegar, o layout vai ter que ceder, e teria sido mais barato\ndeixar o espaço aberto do que preencher com uma forma provisória.",{"title":206,"searchDepth":207,"depth":207,"links":208},"",2,[209,210,211,212,213,221,222,223],{"id":12,"depth":207,"text":13},{"id":28,"depth":207,"text":29},{"id":48,"depth":207,"text":49},{"id":71,"depth":207,"text":72},{"id":107,"depth":207,"text":108,"children":214},[215,217,218,219,220],{"id":112,"depth":216,"text":113},3,{"id":122,"depth":216,"text":123},{"id":140,"depth":216,"text":141},{"id":153,"depth":216,"text":154},{"id":169,"depth":216,"text":170},{"id":176,"depth":207,"text":177},{"id":186,"depth":207,"text":187},{"id":196,"depth":207,"text":197},"\u002Fimages\u002Fcases\u002Fhair-glow-cover.jpg","Hero da landing page Hair Glow — modelo sorrindo enquanto segura o frasco do fluido 5 em 1, sobre fundo verde e roxo claro.",false,"md","Uma página de venda construída como uma sequência de objeções respondidas, uma de cada vez, em desktop e mobile.",{},true,"\u002Ftrabalhos\u002Fhair-glow-izadora-k","Junho de 2026","Landing page responsiva · Figma","UI e protótipo (desktop e mobile)",{"title":5,"description":206},"trabalhos\u002Fhair-glow-izadora-k","Case study sobre o design da landing page de lançamento do Hair Glow, fluido 5 em 1 da linha \"Toda beleza de mãe\", by Izadora K — estrutura, ritmo e adaptação responsiva a partir de um kit de componentes.",[239,240,241,242,243],"Landing page","UI","Protótipo","Design responsivo","Beleza",{"problem":245,"action":246,"outcome":247},"Um produto de lançamento sem página própria, que precisava se explicar sozinho para quem tem trinta segundos e o celular na mão.","Desenhei onze seções em desktop e mobile sobre o Creators Figma Kit e o UI Kit Braip, ordenadas como uma sequência de objeções em vez de uma lista de argumentos.","Landing page entregue nos dois breakpoints com protótipo navegável e handoff — com a seção de prova social explicitamente pendente de conteúdo real.","r1ROT2IGRTGUBonSDxfs9fZcYx-lGLCnOsNYHhw4xE0",[250,629,948,1085,1318,1536,1721],{"id":251,"title":252,"body":253,"cover":606,"coverAlt":607,"description":206,"draft":226,"extension":227,"featured":230,"headline":608,"meta":609,"navigation":230,"order":610,"path":611,"period":612,"platform":613,"role":614,"seo":615,"stem":616,"summary":617,"tags":618,"tldr":624,"__hash__":628},"casesPt\u002Ftrabalhos\u002Fdesign-system-braip.md","Design system Braip — de biblioteca a sistema",{"type":7,"value":254,"toc":592},[255,257,260,263,266,268,271,304,314,320,322,329,332,334,368,371,374,377,379,383,393,399,405,409,414,419,424,428,445,450,455,459,462,504,510,560,563,565,572,575,581,584,586,589],[10,256,13],{"id":12},[15,258,259],{},"A Braip é uma plataforma de vendas e afiliados, e o design system existe para\nsustentar um web app que roda em modo claro e escuro com paridade real — não como\ncortesia visual, mas porque parte considerável da operação acontece no escuro.",[15,261,262],{},"O time de design é pequeno e a engenharia consome o Figma diretamente: o que está\nnomeado no arquivo é o que chega no código. Isso torna a nomenclatura de variável\numa decisão de produto, não de organização interna.",[15,264,265],{},"A restrição que moldou todo o trabalho: o sistema estava em produção e não havia\njanela para refazê-lo do zero. Tudo foi feito sobre a biblioteca viva, com\ncomponentes sendo instanciados em arquivos de outras pessoas durante a mudança.",[10,267,29],{"id":28},[15,269,270],{},"O sistema não tinha um problema de aparência. Tinha um problema de nome.",[15,272,273,276,277,281,282,285,286,289,290,289,293,289,296,299,300,303],{},[22,274,275],{},"Sufixos numéricos sem papel definido."," O grupo ",[278,279,280],"code",{},"State"," da collection ",[278,283,284],{},"❖ Color","\nexpunha cada cor em quatro tiers — ",[278,287,288],{},"01",", ",[278,291,292],{},"02",[278,294,295],{},"03",[278,297,298],{},"04",". O número descrevia\nluminosidade, nunca função. ",[278,301,302],{},"State\u002FPurple\u002F03"," não responde à única pergunta que\nimporta na hora de desenhar: posso usar isso como texto? Na prática, cada pessoa\nescolhia um tier diferente para a mesma função, e a divergência só aparecia quando\nduas telas ficavam lado a lado.",[15,305,306,309,310,313],{},[22,307,308],{},"Contraste nunca medido."," As combinações de texto colorido sobre fundo tint eram\nescolhidas a olho. No modo escuro, onde o fundo do chip se mistura ao canvas\n",[278,311,312],{},"#0B0B0E",", \"parece legível\" e \"é legível\" não são a mesma coisa — e ninguém tinha\no número para saber qual dos dois estava acontecendo.",[15,315,316,319],{},[22,317,318],{},"Motion como valor avulso."," Hover, sheet e toast tinham duração definida\ntela a tela. Não existia escala, não existia vocabulário e, portanto, não existia\ncomo revisar uma micro-interação a não ser por opinião.",[10,321,49],{"id":48},[15,323,324,325,328],{},"Fui o dono da trilha de tokens, contraste e documentação dentro do time de design,\nsob o épico de design system ",[22,326,327],{},"TI-2036",". Isso cobre a arquitetura de nomes das\nvariáveis, a auditoria de contraste, a escala de motion e as specs de handoff.",[15,330,331],{},"O que não é meu: os componentes de produto em si, desenhados pelo time ao longo do\ntempo, e a implementação em código do consumo desses tokens. Meu trabalho foi dar a\nesses componentes uma base que se explicasse sozinha.",[10,333,72],{"id":71},[15,335,336,337,339,340,343,344,347,348,351,352,354,355,358,359,361,362,364,365,367],{},"Comecei auditando a collection ",[278,338,284],{}," e, em vez de propor uma convenção do zero,\nfui ler o uso real. Inspecionei como os componentes ",[278,341,342],{},"Tags"," e ",[278,345,346],{},"Chips"," já consumiam os\ntiers: na variante ",[278,349,350],{},"Solid",", o container usava o tier ",[278,353,295],{}," e o texto ficava branco; na\n",[278,356,357],{},"Minimalist",", o container usava ",[278,360,288],{},"\u002F",[278,363,292],{}," e o texto usava ",[278,366,295],{},". Havia uma convenção\nimplícita ali, funcionando, sem nome.",[15,369,370],{},"Com o padrão implícito mapeado, comparei com o que design systems maduros fazem para\nescalas de estado — Ant Design, Atlassian, Polaris e IBM Carbon convergem para a\nmesma sequência de papéis: fundo, contorno, ícone, texto. A convenção da Braip já era\nessa; faltava dizê-la em voz alta.",[15,372,373],{},"A partir daí: renomeação sem tocar em valor, medição de contraste sobre a escala\nrenomeada, correção dos pares que não passavam e, por último, a extensão da mesma\nlógica de \"nome que diz a função\" para motion.",[15,375,376],{},"Cada etapa virou spec e plano versionados antes da execução — 20 specs e 28 planos\nde design entre 3 e 24 de julho de 2026. O plano existe menos para lembrar o que\nfazer e mais para deixar registrado o que foi descartado.",[10,378,108],{"id":107},[110,380,382],{"id":381},"decisão-1-papel-semântico-em-vez-de-escala-numérica","Decisão 1 — Papel semântico em vez de escala numérica",[15,384,385,388,389,392],{},[22,386,387],{},"Contexto:"," ",[278,390,391],{},"State\u002F\u003CCor>\u002F01–04",", em nove cores. O número indicava luminosidade,\nnão função.",[15,394,395,398],{},[22,396,397],{},"Alternativa descartada:"," manter os números e publicar uma legenda explicando o\nmapeamento de cada tier.",[15,400,401,404],{},[22,402,403],{},"Por que esta:"," legenda é documentação que ninguém abre no meio de um handoff. O\nnome, ao contrário, viaja junto com o token — aparece no inspector, aparece no\ncódigo, aparece na conversa. E adotar a sequência que Ant Design, Atlassian, Polaris\ne Carbon já usam reduz o custo de entrada de quem chega de outro sistema: a pessoa\nnão precisa aprender a Braip, só reconhecer o padrão.",[110,406,408],{"id":407},"decisão-2-renomear-sem-tocar-em-valor","Decisão 2 — Renomear sem tocar em valor",[15,410,411,413],{},[22,412,387],{}," havia a tentação de corrigir cor e nome na mesma passada, já que o\narquivo estava aberto de qualquer forma.",[15,415,416,418],{},[22,417,397],{}," rename e rebind de valores num único movimento.",[15,420,421,423],{},[22,422,403],{}," separar as duas operações torna cada uma verificável. Se nada muda\nvisualmente depois do rename, o rename está certo — qualquer diferença de pixel seria\nbug, não intenção. O ajuste cromático veio depois, guiado pelo relatório de contraste,\ne pôde ser avaliado isoladamente porque a camada de nomes já estava estável.",[110,425,427],{"id":426},"decisão-3-legado-desativado-por-documentação-não-por-deleção","Decisão 3 — Legado desativado por documentação, não por deleção",[15,429,430,432,433,436,437,440,441,444],{},[22,431,387],{}," a collection ",[278,434,435],{},"Motion"," carregava uma escala antiga, ",[278,438,439],{},"value\u002Fduration\u002F100","\na ",[278,442,443],{},"600",", sem vínculo com os tokens semânticos novos.",[15,446,447,449],{},[22,448,397],{}," apagar as variáveis legadas junto com a publicação da\nnova escala.",[15,451,452,454],{},[22,453,403],{}," apagar variável em biblioteca viva quebra instância em arquivo que\nnão é seu, e a pessoa afetada descobre pelo estrago. Marcar explicitamente como \"não\nusar\" na documentação de referência interrompe a adoção sem quebrar ninguém; a\nremoção fica para quando o consumo chegar a zero.",[10,456,458],{"id":457},"solução","Solução",[15,460,461],{},"A base final da Braip são 839 tokens em sete categorias — cor, cor semântica,\nprimitivos, tipografia, espaçamento, layout e responsividade.",[15,463,464,467,468,289,471,289,474,289,477,289,480,483,484,289,487,289,490,343,493,496,497,500,501,503],{},[22,465,466],{},"Cor de estado."," Nove cores (",[278,469,470],{},"Neutral",[278,472,473],{},"Purple",[278,475,476],{},"Green",[278,478,479],{},"Blue",[278,481,482],{},"Pink",",\n",[278,485,486],{},"Orange",[278,488,489],{},"Red",[278,491,492],{},"Yellow",[278,494,495],{},"Off",") expostas por papel, não por índice:\n",[278,498,499],{},"background → border → icon → text",". São 35 variáveis renomeadas, em dois modos,\nsem nenhuma alteração de valor no processo. ",[278,502,495],{}," é a exceção documentada: tem só\ntrês tiers, porque nunca precisou de um nível de ênfase.",[15,505,506,509],{},[22,507,508],{},"Contraste."," Chips e Tags auditados em WCAG 2.0 AA nas nove cores, nos dois modos,\ncom a razão de cada par registrada em tabela. Os pares que não alcançavam 4.5:1 foram\ncorrigidos antes da publicação, não depois do relato de alguém.",[15,511,512,515,516,289,519,289,522,289,525,289,528,531,532,289,535,289,538,541,542,544,545,547,548,550,551,553,554,556,557,559],{},[22,513,514],{},"Motion."," Cinco tokens de duração (",[278,517,518],{},"instant",[278,520,521],{},"fast",[278,523,524],{},"base",[278,526,527],{},"slow",[278,529,530],{},"slower",") e\ntrês de easing (",[278,533,534],{},"standard",[278,536,537],{},"enter",[278,539,540],{},"exit","), cada um com guideline de quando usar —\n",[278,543,521],{}," para micro-hover, ",[278,546,524],{}," para toast, ",[278,549,527],{}," para sheet; ",[278,552,537],{}," para elemento\nque aparece, ",[278,555,540],{}," para elemento que sai, ",[278,558,534],{}," para transição neutra. A escala\nfoi aplicada em três componentes de referência: Sheet, Toast e o hover do Button.",[15,561,562],{},"Toda a escala vive documentada na página Foundations do arquivo, com preview\nanimável — a documentação é o próprio arquivo de trabalho, não um PDF paralelo que\nenvelhece sozinho.",[10,564,177],{"id":176},[15,566,567,568,571],{},"O token passou a se explicar no handoff. Perguntar \"qual tier eu uso aqui?\" deixou de\nfazer sentido, porque a pergunta já está respondida no nome: se é texto, use ",[278,569,570],{},"text",".",[15,573,574],{},"Contraste virou critério verificável em vez de opinião. Existe uma tabela com a razão\nmedida de cada combinação de Chips e Tags, nas nove cores, nos dois modos — e o\nargumento numa revisão de design deixou de ser \"acho que está claro demais\" para ser\numa linha dessa tabela.",[15,576,577,578,580],{},"Motion virou vocabulário compartilhado. Discutir se um sheet deve usar ",[278,579,527],{}," é uma\nconversa produtiva; discutir se deve usar 320 ou 340 milissegundos não é.",[15,582,583],{},"E o sistema absorveu tudo isso sem quebrar arquivo de ninguém — o legado saiu de\ncirculação por documentação, no ritmo em que o consumo caiu.",[10,585,197],{"id":196},[15,587,588],{},"Inverti a ordem. Renomeei antes de medir contraste, e o resultado foi ter que voltar\nna escala já renomeada para corrigir os pares que não passavam — o relatório final\ncarrega marcas de \"corrigido\" que não existiriam se a medição tivesse vindo primeiro.\nMedir é barato; renomear duas vezes, não.",[15,590,591],{},"E tratei a evidência visual como etapa posterior à execução. Vários planos ficaram com\na captura de tela pendente depois da mudança já aplicada, o que significa que parte do\n\"antes\" se perdeu. Documentar não é o passo seguinte ao trabalho — é parte dele, e\nquando fica para depois, normalmente não acontece.",{"title":206,"searchDepth":207,"depth":207,"links":593},[594,595,596,597,598,603,604,605],{"id":12,"depth":207,"text":13},{"id":28,"depth":207,"text":29},{"id":48,"depth":207,"text":49},{"id":71,"depth":207,"text":72},{"id":107,"depth":207,"text":108,"children":599},[600,601,602],{"id":381,"depth":216,"text":382},{"id":407,"depth":216,"text":408},{"id":426,"depth":216,"text":427},{"id":457,"depth":207,"text":458},{"id":176,"depth":207,"text":177},{"id":196,"depth":207,"text":197},"\u002Fimages\u002Fcases\u002Fbraip-foundation-cover.jpg","Capa do arquivo Braip Foundations — \"Design System · Foundations & Design Tokens\" sobre o monograma da Braip em gradiente roxo.","Transformar uma biblioteca de componentes desalinhada em um sistema com tokens, motion e documentação que o time de engenharia consegue consumir.",{},1,"\u002Ftrabalhos\u002Fdesign-system-braip","2025–2026","Web · Figma Variables","UI\u002FUX Designer — Design System (trilha de tokens, em time de design)",{"title":252,"description":206},"trabalhos\u002Fdesign-system-braip","Case study sobre a reestruturação do design system da Braip em Figma Variables, com arquitetura de tokens semânticos, tokens de motion e documentação de handoff.",[619,620,621,622,623],"Design System","Design Tokens","Figma Variables","Acessibilidade","Documentação",{"problem":625,"action":626,"outcome":627},"A biblioteca crescia por adição — cada nova tela trazia variações de cor, espaçamento e movimento que ninguém conseguia rastrear.","Reorganizei a base em tokens semânticos (Foundations), padronizei duração e easing de motion e escrevi a documentação de uso de cada decisão.","Escala de cor com papel semântico explícito, contraste AA verificado em 9 cores nos dois modos e um vocabulário de motion aplicado em componentes de referência — o handoff deixou de depender de quem desenhou a tela.","xELYm_h6_4UBdB3CLR_Ro0hYAZ4ygILyPheegajYCMI",{"id":630,"title":631,"body":632,"cover":797,"coverAlt":929,"description":206,"draft":226,"extension":227,"featured":230,"headline":930,"meta":931,"navigation":230,"order":207,"path":932,"period":933,"platform":934,"role":935,"seo":936,"stem":937,"summary":938,"tags":939,"tldr":943,"__hash__":947},"casesPt\u002Ftrabalhos\u002Fcheckout-discovery.md","Checkout — o fluxo inteiro e o motion do cartão",{"type":7,"value":633,"toc":913},[634,636,639,646,653,655,661,664,670,673,675,695,702,704,711,726,733,735,739,744,749,754,758,761,766,771,780,783,792,798,805,809,814,819,823,828,837,841,846,851,853,856,879,885,887,905,907,910],[10,635,13],{"id":12},[15,637,638],{},"A Braip é uma plataforma de vendas digitais, e o checkout é o lugar onde tudo que\nacontece antes dele é cobrado ou perdido. Não é uma tela de produto: é o último\npasso de toda venda que a plataforma processa, para milhares de lojas que não têm\ncontrole nenhum sobre como ele se parece.",[15,640,641,642,645],{},"Quando peguei o arquivo, existiam ",[22,643,644],{},"dois checkouts legados"," vivos ao mesmo tempo —\numa versão de página única e uma versão multietapas. Nenhuma das duas usava o design\nsystem atual: eram telas da V1, montadas antes do sistema de variáveis existir.",[15,647,648,649,652],{},"O escopo real do trabalho está registrado no changelog do arquivo, e vale ser\nliteral sobre ele: ",[22,650,651],{},"remodelar a V1 usando o design system da V2",". Isso não é\n\"redesenhar do zero com liberdade\". É um trabalho de tradução com uma restrição\ndura — o fluxo de negócio já existia, os métodos de pagamento já existiam, e o que\neu podia mudar era a forma, não o contrato.",[10,654,29],{"id":28},[15,656,657,658,571],{},"A tensão de design aqui não é a tela cheia. É a tela cheia ",[22,659,660],{},"de coisa obrigatória",[15,662,663],{},"Um checkout brasileiro não pede e-mail e cartão. Ele pede nome, e-mail, telefone,\nCEP, endereço, número, complemento, bairro, cidade, estado, forma de envio, forma de\npagamento, número do cartão, titular, validade, CVC, parcelamento e CPF do titular —\nantes de qualquer confirmação. Some a isso cupom, order bump, frete calculado e\ndesconto de Pix. É um formulário longo por lei e por regra de adquirência, não por\ndescuido de quem desenhou.",[15,665,666,667,571],{},"Então a pergunta não podia ser \"como reduzir campos\". Tinha que ser: ",[22,668,669],{},"como fazer um\nformulário longo não parecer um obstáculo enquanto ele é preenchido",[15,671,672],{},"E existia um segundo problema, mais silencioso. O checkout legado tinha telas para\nquando dá certo. Não tinha para quando dá errado. Cartão recusado, saldo\ninsuficiente, falha na emissão do Pix, o segundo em que o pagamento está sendo\nprocessado — nada disso estava desenhado. Na prática significa que o pior momento da\nexperiência era o único sem design.",[10,674,49],{"id":48},[51,676,677,680,683,686,689,692],{},[54,678,679],{},"Remodelagem do checkout de página única sobre o design system V2",[54,681,682],{},"Mapeamento e desenho do caminho infeliz — recusas, falhas e estados de erro",[54,684,685],{},"Estados de carregamento (skeleton) para o processamento do pagamento",[54,687,688],{},"Adaptação responsiva completa: desktop 1440 e mobile 390",[54,690,691],{},"Motion de preenchimento do cartão de crédito",[54,693,694],{},"Protótipo navegável por método de pagamento, com confirmação e recusa",[15,696,697,698,701],{},"O que ",[22,699,700],{},"não"," foi meu: as regras de negócio do checkout, os métodos de pagamento\ndisponíveis e os textos legais do rodapé — todos herdados. E o design system V2, que\né trabalho de time; eu atuo na trilha de tokens dele, mas os componentes que usei\naqui vieram da biblioteca, não foram inventados para este case.",[10,703,72],{"id":71},[15,705,706,707,710],{},"Comecei pelo inventário, não pelo desenho. O arquivo ganhou duas seções marcadas\n",[278,708,709],{},"⚠︎ OLD"," — a página única e a multietapas legadas — mantidas lado a lado com as\nnovas. Isso parece burocracia de arquivo, mas foi a decisão de processo mais útil do\ntrabalho: com o \"antes\" visível ao lado do \"depois\", toda divergência vira uma\npergunta explícita em vez de uma mudança silenciosa.",[15,712,713,714,717,718,721,722,725],{},"Depois separei o trabalho em três frentes que andaram em paralelo, cada uma com sua\nprópria seção no arquivo: o ",[22,715,716],{},"caminho feliz"," (página única moderna), o ",[22,719,720],{},"caminho\ninfeliz"," (recusas e falhas) e os ",[22,723,724],{},"estados de carregamento",". Tratar o erro como uma\nfrente de trabalho própria, com orçamento de tempo próprio, foi o que impediu ele de\nvirar a última hora de sexta-feira.",[15,727,728,729,732],{},"O motion do cartão nasceu num rascunho à parte antes de entrar no fluxo — uma seção\n",[278,730,731],{},"motion draft card",", isolada, onde dava para errar sem quebrar as telas boas.",[10,734,108],{"id":107},[110,736,738],{"id":737},"o-formulário-longo-mostra-tudo-mas-em-dois-pesos","O formulário longo mostra tudo, mas em dois pesos",[15,740,741,743],{},[22,742,387],{}," todos os campos são obrigatórios, e nenhum pode ser escondido atrás de\num acordeão sem criar a sensação de que o formulário nunca acaba.",[15,745,746,748],{},[22,747,397],{}," o fluxo multietapas, que existia e continua existindo\ncomo variante. Ele resolve a percepção de tamanho quebrando em passos — mas troca um\nformulário longo por três telas com três chances de abandono e um botão \"voltar\" que\nnão devolve o estado direito.",[15,750,751,753],{},[22,752,403],{}," a página única mostra o custo inteiro de uma vez. É honesta, e é\nmais rápida para quem já sabe o que quer. O trabalho passa a ser de hierarquia: dois\nblocos lado a lado em desktop, com identidade e entrega à esquerda e pagamento à\ndireita, e o total parcelado imediatamente acima do botão — o último número que a\npessoa lê antes de decidir.",[110,755,757],{"id":756},"o-cartão-de-crédito-se-preenche-enquanto-você-digita","O cartão de crédito se preenche enquanto você digita",[15,759,760],{},"Esta é a decisão que dá nome ao case.",[15,762,763,765],{},[22,764,387],{}," o bloco do cartão é o ponto mais frágil do checkout inteiro. É onde a\npessoa digita dezesseis dígitos que ela não sabe de cabeça, tirados de um retângulo\nde plástico que ela está segurando na outra mão, sob a suspeita permanente de estar\ndigitando num site que talvez não devesse.",[15,767,768,770],{},[22,769,397],{}," validação silenciosa — aceitar os dados e só reagir no\nerro. É o padrão do checkout legado e é o mais barato de construir. Também é o que\ntransforma um dígito trocado em uma recusa de adquirente três telas adiante, quando\na pessoa já não tem mais o cartão na mão.",[15,772,773,775,776,779],{},[22,774,403],{}," desenhei o cartão como uma ",[22,777,778],{},"representação visual que se preenche\nem tempo real",". O número aparece no cartão conforme é digitado, agrupado de quatro\nem quatro; o nome do titular aparece embaixo; a bandeira é detectada e reconhecida\nantes do campo terminar. O cartão vira um espelho do que foi digitado.",[15,781,782],{},"O que isso resolve não é estético. É de conferência: a pessoa compara o cartão da\ntela com o cartão da mão, e vê o erro no momento em que ele acontece — não depois da\nrecusa. E resolve um segundo problema, de confiança: uma interface que reage com\nprecisão ao que você digita comunica que está processando aquilo com cuidado.",[15,784,785],{},[786,787],"video",{"src":788,"poster":789,"autoPlay":230,"loop":230,"muted":230,"playsInline":230,"controls":230,"width":790,"ariaLabel":791},"\u002Fvideos\u002Fcheckout-cartao.mp4","\u002Fimages\u002Fcases\u002Fcheckout-cartao-poster.jpg",1080,"Animação do bloco de cartão de crédito: o número, o nome do titular e a bandeira aparecem no cartão conforme os campos são preenchidos",[15,793,794],{},[36,795],{"alt":796,"src":797},"Bloco de pagamento com o cartão de crédito preenchido — número, titular e bandeira refletidos no cartão acima dos campos de validade, CVC e parcelamento","\u002Fimages\u002Fcases\u002Fcheckout-cartao.jpg",[15,799,800,801,804],{},"O motion tem uma regra que segurei durante todo o desenho: ",[22,802,803],{},"ele nunca atrasa a\ndigitação",". A animação acompanha o campo, não o contrário. Nenhuma transição\nbloqueia o próximo caractere, e o foco nunca é movido automaticamente entre campos —\nautoavanço de foco quebra a correção de quem errou o décimo primeiro dígito.",[110,806,808],{"id":807},"o-caminho-infeliz-recebeu-tanto-arquivo-quanto-o-feliz","O caminho infeliz recebeu tanto arquivo quanto o feliz",[15,810,811,813],{},[22,812,387],{}," cartão recusado é o desfecho mais comum depois do sucesso, e era o\núnico sem tela.",[15,815,816,818],{},[22,817,403],{}," o protótipo cobre três recusas distintas — saldo insuficiente,\nrecusa do emissor e falha na emissão de Pix ou boleto — porque as três exigem coisas\ndiferentes da pessoa. Saldo insuficiente pede outro cartão. Recusa do emissor pede\nligar para o banco. Falha de emissão pede só tentar de novo. Uma tela genérica de\n\"pagamento não autorizado\" empurra os três casos para o mesmo lugar: o abandono.",[110,820,822],{"id":821},"a-espera-é-desenhada-não-é-ausência","A espera é desenhada, não é ausência",[15,824,825,827],{},[22,826,387],{}," entre apertar \"Comprar agora\" e a resposta da adquirente existe um\nintervalo real, de segundos, em que a tela não tem nada para dizer.",[15,829,830,832,833,836],{},[22,831,403],{}," desenhei o estado de processamento como ",[22,834,835],{},"skeleton",", com o formato\ndo conteúdo que está chegando, em vez de um spinner sobre a tela apagada. O skeleton\ndiz \"vem conteúdo aqui, deste tamanho\"; o spinner diz \"espere\". No momento em que a\npessoa acabou de autorizar um pagamento, a diferença entre essas duas mensagens é a\ndiferença entre esperar e desconfiar.",[110,838,840],{"id":839},"mobile-não-é-a-mesma-página-mais-estreita","Mobile não é a mesma página mais estreita",[15,842,843,845],{},[22,844,387],{}," em 390 px os dois blocos lado a lado viram uma coluna, e a ordem passa\na importar mais do que o layout.",[15,847,848,850],{},[22,849,403],{}," em mobile o resumo do produto sobe para o topo, logo abaixo do\nbanner — antes de qualquer campo. Em desktop essa informação pode conviver na\nlateral; em mobile ela precisa vir antes, porque é o que ancora a pessoa no que ela\nestá comprando durante os trinta campos seguintes. O bloco do cartão mantém o motion\nintegral: é o único elemento do checkout que não foi simplificado no breakpoint\nmenor.",[10,852,177],{"id":176},[15,854,855],{},"O que foi entregue:",[51,857,858,861,864,867,870,873,876],{},[54,859,860],{},"Checkout de página única remodelado sobre o design system V2, em desktop (1440) e\nmobile (390)",[54,862,863],{},"Variante multietapas mantida e atualizada em paralelo",[54,865,866],{},"Caminho infeliz desenhado: três tipos de recusa mais falha de emissão",[54,868,869],{},"Estados de carregamento com skeleton para o processamento do pagamento",[54,871,872],{},"Telas de pedido confirmado para cartão, Pix e boleto",[54,874,875],{},"Motion de preenchimento do cartão, com especificação de comportamento",[54,877,878],{},"Protótipo navegável cobrindo os quatro métodos de pagamento",[15,880,881,884],{},[22,882,883],{},"Sobre números:"," não publico taxa de conversão deste trabalho. A métrica existe e\nfica com o time de produto da Braip; ela mede o checkout inteiro, incluindo mudanças\nde backend e de política de pagamento que não são minhas. Atribuir esse número ao\ndesign seria confortável e seria falso.",[10,886,187],{"id":186},[51,888,889,899],{},[54,890,891,892,289,895,898],{},"Os campos de apoio dos inputs ainda exibem strings padrão do design system\n(",[278,893,894],{},"Message text",[278,896,897],{},"Title",") nos slots de mensagem de ajuda e erro. É default de\ncomponente, não conteúdo — mas significa que o texto de erro real de cada campo\nainda não foi escrito, e escrever isso é trabalho de UX writing que ficou fora\ndesta rodada.",[54,900,901,902,904],{},"As duas seções legadas continuam no arquivo, marcadas ",[278,903,709],{},". Elas só saem\nquando a migração terminar de verdade em produção.",[10,906,197],{"id":196},[15,908,909],{},"Desenhei o motion do cartão depois de fechar o layout do bloco de pagamento, e essa\nordem foi um erro meu. Quando fui animar, o cartão já tinha posição, tamanho e\ndistância dos campos definidos por composição estática — e a animação teve que caber\nnaquilo. Se o motion tivesse entrado junto com o layout, o cartão provavelmente\nestaria mais perto do campo de número, e a relação entre o dígito digitado e o dígito\nque aparece seria mais curta de ler.",[15,911,912],{},"O segundo: passei tempo demais no caminho feliz antes de abrir o caminho infeliz.\nSabia desde o inventário que os estados de erro estavam faltando, e mesmo assim\ndeixei para depois — o que fez o caminho infeliz virar uma seção separada do arquivo\nem vez de nascer junto com cada tela. Estados de erro não são um capítulo. São uma\npropriedade de cada tela, e o arquivo teria ficado mais coerente se eu tivesse\ntratado assim desde o começo.",{"title":206,"searchDepth":207,"depth":207,"links":914},[915,916,917,918,919,926,927,928],{"id":12,"depth":207,"text":13},{"id":28,"depth":207,"text":29},{"id":48,"depth":207,"text":49},{"id":71,"depth":207,"text":72},{"id":107,"depth":207,"text":108,"children":920},[921,922,923,924,925],{"id":737,"depth":216,"text":738},{"id":756,"depth":216,"text":757},{"id":807,"depth":216,"text":808},{"id":821,"depth":216,"text":822},{"id":839,"depth":216,"text":840},{"id":176,"depth":207,"text":177},{"id":186,"depth":207,"text":187},{"id":196,"depth":207,"text":197},"Bloco de cartão de crédito do checkout — o cartão preenchido em tempo real com número, titular e bandeira, acima dos campos do formulário.","Redesenhar um checkout de página única sobre o design system novo, e resolver o trecho mais frágil dele — os quinze segundos em que alguém digita o número do cartão.",{},"\u002Ftrabalhos\u002Fcheckout-discovery","2026","Checkout web · Desktop e mobile","UI\u002FUX Designer — Produto (redesenho sobre o design system V2 da Braip)",{"title":631,"description":206},"trabalhos\u002Fcheckout-discovery","Case study do redesenho do checkout da Braip — a remodelagem da versão legada sobre o design system V2, o mapeamento dos estados que ninguém desenha (recusa, espera, falha) e a animação de preenchimento do cartão de crédito.",[940,941,942,435,619],"Produto","Fluxo","Estados",{"problem":944,"action":945,"outcome":946},"O checkout legado era o último passo de toda venda da plataforma e o menos cuidado — dois fluxos concorrentes, componentes fora do design system e os momentos de erro e espera nunca desenhados.","Remodelei o checkout de página única sobre o design system V2, mapeei o caminho infeliz e os estados de carregamento, e desenhei um motion que preenche o cartão de crédito visualmente enquanto a pessoa digita.","Fluxo entregue em desktop e mobile, com protótipo navegável cobrindo confirmação e três tipos de recusa. As métricas de conversão ficam com o time de produto — não são minhas para publicar.","CKz42C_5wdIVCTMjMz5j6R33JY7cFq736pa22h3BxC8",{"id":4,"title":5,"body":949,"cover":224,"coverAlt":225,"description":206,"draft":226,"extension":227,"featured":226,"headline":228,"meta":1081,"navigation":230,"order":207,"path":231,"period":232,"platform":233,"role":234,"seo":1082,"stem":236,"summary":237,"tags":1083,"tldr":1084,"__hash__":248},{"type":7,"value":950,"toc":1065},[951,953,955,959,961,963,967,969,971,973,983,985,987,993,995,999,1003,1007,1009,1011,1013,1015,1017,1021,1025,1027,1031,1033,1035,1039,1041,1043,1045,1047,1049,1051,1053,1055,1057,1059,1061],[10,952,13],{"id":12},[15,954,17],{},[15,956,20,957,25],{},[22,958,24],{},[10,960,29],{"id":28},[15,962,32],{},[15,964,965],{},[36,966],{"alt":38,"src":39},[15,968,42],{},[15,970,45],{},[10,972,49],{"id":48},[51,974,975,977,979,981],{},[54,976,56],{},[54,978,59],{},[54,980,62],{},[54,982,65],{},[15,984,68],{},[10,986,72],{"id":71},[15,988,75,989,79,991,83],{},[22,990,78],{},[22,992,82],{},[15,994,86],{},[15,996,997,92],{},[22,998,91],{},[15,1000,1001,98],{},[22,1002,97],{},[15,1004,1005,104],{},[22,1006,103],{},[10,1008,108],{"id":107},[110,1010,113],{"id":112},[15,1012,116],{},[15,1014,119],{},[110,1016,123],{"id":122},[15,1018,1019],{},[36,1020],{"alt":128,"src":129},[15,1022,132,1023,137],{},[134,1024,136],{},[110,1026,141],{"id":140},[15,1028,1029],{},[36,1030],{"alt":146,"src":147},[15,1032,150],{},[110,1034,154],{"id":153},[15,1036,1037],{},[36,1038],{"alt":159,"src":160},[15,1040,163],{},[15,1042,166],{},[110,1044,170],{"id":169},[15,1046,173],{},[10,1048,177],{"id":176},[15,1050,180],{},[15,1052,183],{},[10,1054,187],{"id":186},[15,1056,190],{},[15,1058,193],{},[10,1060,197],{"id":196},[15,1062,200,1063,204],{},[22,1064,203],{},{"title":206,"searchDepth":207,"depth":207,"links":1066},[1067,1068,1069,1070,1071,1078,1079,1080],{"id":12,"depth":207,"text":13},{"id":28,"depth":207,"text":29},{"id":48,"depth":207,"text":49},{"id":71,"depth":207,"text":72},{"id":107,"depth":207,"text":108,"children":1072},[1073,1074,1075,1076,1077],{"id":112,"depth":216,"text":113},{"id":122,"depth":216,"text":123},{"id":140,"depth":216,"text":141},{"id":153,"depth":216,"text":154},{"id":169,"depth":216,"text":170},{"id":176,"depth":207,"text":177},{"id":186,"depth":207,"text":187},{"id":196,"depth":207,"text":197},{},{"title":5,"description":206},[239,240,241,242,243],{"problem":245,"action":246,"outcome":247},{"id":1086,"title":1087,"body":1088,"cover":1300,"coverAlt":1301,"description":206,"draft":226,"extension":227,"featured":226,"headline":1302,"meta":1303,"navigation":230,"order":1304,"path":1305,"period":1306,"platform":233,"role":1307,"seo":1308,"stem":1309,"summary":1310,"tags":1311,"tldr":1313,"__hash__":1317},"casesPt\u002Ftrabalhos\u002Fsos-beleza-absoluta.md","SOS Beleza Absoluta — um style guide posto à prova",{"type":7,"value":1089,"toc":1285},[1090,1092,1095,1098,1100,1103,1106,1113,1115,1129,1135,1137,1140,1143,1146,1152,1154,1158,1161,1164,1168,1171,1174,1180,1186,1190,1193,1196,1202,1206,1209,1212,1218,1220,1223,1240,1243,1249,1251,1254,1274,1276,1279,1282],[10,1091,13],{"id":12},[15,1093,1094],{},"SOS Beleza Absoluta é um protocolo de beleza de dois produtos: um encapsulado com vitaminas de A a Z e um óleo de babosa de uso tópico. A promessa é de dentro para fora — nutrição interna sustentando o resultado, ação externa dando o brilho imediato. O produto se vende por uma landing page longa, do tipo que responde toda objeção antes de pedir o cartão.",[15,1096,1097],{},"A copy veio pronta do time de marketing. A estrutura de argumento — dor, protocolo, diferencial, linha do tempo, prova social, garantia, oferta, FAQ — já estava decidida quando o arquivo chegou em mim. O que estava em aberto era tudo que vem depois: como isso se parece, como se comporta em três larguras de tela, e o que impede que as quatorze seções pareçam quatorze páginas diferentes.",[10,1099,29],{"id":28},[15,1101,1102],{},"Landing page longa tem um modo de falha específico e chato: ela apodrece por adição. A seção 3 pede um bege um pouquinho mais quente que o da seção 2. A seção 7 precisa de um título entre os dois tamanhos que existem, então nasce um terceiro. Ninguém toma uma decisão ruim — cada uma delas é razoável isolada. No fim, você tem onze beges, seis escalas de título e nenhuma forma de mudar a marca sem abrir seção por seção.",[15,1104,1105],{},"Multiplique por três breakpoints. Desktop com 1768 px de largura, iPad com 1024, mobile com 480 — e uma página que, no mobile, tem 15.302 px de altura. É aí que a decisão avulsa cobra: cada valor solto vira três valores soltos.",[15,1107,1108,1109,1112],{},"Então o problema real não era \"desenhar uma landing page\". Era: ",[22,1110,1111],{},"existe um conjunto pequeno o bastante de decisões visuais que cobre uma página inteira de venda, sem exceção?"," A página virou o experimento que responde isso.",[10,1114,49],{"id":48},[51,1116,1117,1120,1123,1126],{},[54,1118,1119],{},"Style guide do projeto: Color Styles, Text Styles e biblioteca de variáveis de cor e tipografia, herdando o Braip Foundations",[54,1121,1122],{},"Biblioteca de componentes própria da página — dezessete componentes e component sets",[54,1124,1125],{},"UI das quatorze seções e adaptação para desktop, iPad e mobile",[54,1127,1128],{},"Direção de arte e composições de produto",[15,1130,1131,1134],{},[22,1132,1133],{},"O que não foi meu:"," a copy inteira, incluindo headline, bullets, FAQ e depoimentos, veio do time de marketing. A arquitetura de argumento da página também. Eu recebi o que a página precisava dizer e decidi como ela diz.",[10,1136,72],{"id":71},[15,1138,1139],{},"O trabalho começou pelo avesso do óbvio: antes de qualquer tela de alta fidelidade, montei os wireframes das três larguras com a copy que existia. O changelog do arquivo registra essa versão como 1.0, em 20 de março de 2026 — \"versão somente com a copy desenvolvida até o momento\". Só depois do retorno do time é que parti para arte e imagens.",[15,1141,1142],{},"Entre o wireframe e a arte entrou o style guide. Ele não é um artefato entregue ao cliente; é infraestrutura minha, feita para que a fase seguinte fosse rápida e para que a página não pudesse divergir de si mesma.",[15,1144,1145],{},"O Braip Foundations deu a base — o design system em que eu já trabalhava a arquitetura de tokens. Isso encurtou a parte cara: eu não recomecei a escala de cor nem os fundamentos de tipografia do zero, herdei e especializei. Vale dizer isso com todas as letras, porque é o motivo de um style guide de projeto ter cabido no cronograma de uma landing page.",[15,1147,1148],{},[36,1149],{"alt":1150,"src":1151},"Painel de Color Styles do arquivo SOS Beleza Absoluta, com a paleta de beges, marrons e neutros organizada em amostras nomeadas","\u002Fimages\u002Fcases\u002Fsos-beleza-styleguide.jpg",[10,1153,108],{"id":107},[110,1155,1157],{"id":1156},"o-sistema-antes-da-primeira-tela","O sistema antes da primeira tela",[15,1159,1160],{},"Color Styles, Text Styles e uma biblioteca de variáveis vieram antes da seção 1. A regra que me impus foi simples e desconfortável: nenhuma cor ou tamanho de texto entra numa seção sem estar no sistema. Quando uma seção pedia algo que não existia, a pergunta não era \"qual valor uso aqui\", era \"essa necessidade é real o suficiente para virar decisão do projeto?\".",[15,1162,1163],{},"Na maior parte das vezes, não era — e a seção se resolvia com o que já havia. Foi assim que a paleta ficou pequena: ela é pequena porque foi obrigada a ser, não porque eu fui disciplinado no momento de cada tela.",[110,1165,1167],{"id":1166},"dezessete-componentes-em-vez-de-quatorze-seções","Dezessete componentes em vez de quatorze seções",[15,1169,1170],{},"A página não é feita de seções, é feita de peças. Produto, Button, Card Modal, Timeline Text, FAQ, Card\u002Ftext image, Image\u002FFlow, Promo bar, Picture\u002FSanfona, Footer responsive — cada um com suas variantes.",[15,1172,1173],{},"Isso muda o custo do responsivo. Adaptar quatorze seções para três larguras é quatorze problemas resolvidos três vezes. Adaptar dezessete componentes é dezessete problemas resolvidos uma vez, e as seções herdam. O carrossel de mobile, por exemplo, é um component set próprio — a seção de protocolo não sabe que virou carrossel, ela só compõe a peça certa.",[15,1175,1176],{},[36,1177],{"alt":1178,"src":1179},"Seção \"Protocolo completo de dentro para fora\" em desktop, com três cards lado a lado explicando nutrição interna, ação externa e praticidade de rotina","\u002Fimages\u002Fcases\u002Fsos-beleza-protocolo.jpg",[15,1181,1182],{},[36,1183],{"alt":1184,"src":1185},"A mesma seção de protocolo em mobile, com os três cards empilhados verticalmente e a imagem de produto reposicionada acima do texto","\u002Fimages\u002Fcases\u002Fsos-beleza-mobile.jpg",[110,1187,1189],{"id":1188},"desenhar-o-tempo-como-parte-do-produto","Desenhar o tempo como parte do produto",[15,1191,1192],{},"Este é o ponto onde o sistema encostou no conteúdo. O protocolo só entrega com constância — as primeiras duas semanas são de adaptação, o primeiro mês traz queda menor, o terceiro é quando outras pessoas percebem. Uma página que só mostra \"antes e depois\" mente sobre isso.",[15,1194,1195],{},"A seção de linha do tempo existe para tornar a espera visível em vez de escondê-la, e ela usa um componente próprio, Timeline Text, com variantes por marco. Cada estágio tem o mesmo peso tipográfico dos outros — nenhum é destacado como \"o momento em que funciona\". É uma decisão de sistema com efeito de honestidade: sem hierarquia entre os marcos, a página não consegue insinuar que o resultado chega antes do que chega.",[15,1197,1198],{},[36,1199],{"alt":1200,"src":1201},"Seção \"Seus primeiros 3 meses\" com os marcos de duas semanas, primeiro mês e terceiro mês descritos em blocos de mesmo peso visual","\u002Fimages\u002Fcases\u002Fsos-beleza-timeline.jpg",[110,1203,1205],{"id":1204},"três-ritmos-não-três-preços","Três ritmos, não três preços",[15,1207,1208],{},"A seção de oferta apresenta três planos — três meses, dois meses e um mês, com óleos inclusos conforme o plano. A tentação padrão é ordenar por preço e destacar o do meio. Preferi tratar os planos como durações de tratamento, coerente com o argumento que a página vinha construindo há dez seções: o produto é tempo, não frasco.",[15,1210,1211],{},"Os três cards compartilham o mesmo componente e a mesma composição de produto; o que muda é a quantidade de tempo comprada. O selo de desconto é o mesmo em todos os três, o que também foi uma decisão de sistema — variar o selo criaria a impressão de que um plano é objetivamente melhor, e essa não é uma afirmação que eu tinha como sustentar.",[15,1213,1214],{},[36,1215],{"alt":1216,"src":1217},"Seção de oferta com três planos de tratamento lado a lado, cada um com composição de produto, preço parcelado e botão de compra","\u002Fimages\u002Fcases\u002Fsos-beleza-oferta.jpg",[10,1219,177],{"id":176},[15,1221,1222],{},"O que foi entregue, de fato:",[51,1224,1225,1228,1231,1234,1237],{},[54,1226,1227],{},"Landing page completa em três breakpoints — desktop, iPad e mobile — com quatorze seções",[54,1229,1230],{},"Style guide do projeto: Color Styles, Text Styles e biblioteca de variáveis de cor e tipografia",[54,1232,1233],{},"Biblioteca de dezessete componentes e component sets próprios, com variantes de breakpoint",[54,1235,1236],{},"Composições de produto e direção de arte das seções",[54,1238,1239],{},"FAQ estruturado sobre a base regulatória informada pelo cliente (RDC 240\u002F2018)",[15,1241,1242],{},"Nenhuma cor ou tamanho de texto ficou fora do sistema — que era a pergunta que o projeto se propôs a responder, e a resposta foi sim.",[15,1244,1245,1248],{},[22,1246,1247],{},"Sobre resultado de negócio: não tenho."," A página foi entregue como arquivo de design; números de conversão, se existem, ficaram com o cliente. A frase \"+100K de autoestima revitalizadas\" que aparece na seção de prova social é um claim fornecido pelo cliente e não é uma métrica que eu tenha verificado ou que este case reivindique.",[10,1250,187],{"id":186},[15,1252,1253],{},"Registrado no próprio changelog do arquivo, como dependência externa:",[51,1255,1256,1262,1268],{},[54,1257,1258,1261],{},[22,1259,1260],{},"Depoimentos."," A seção de prova social tem três depoimentos escritos e cards ainda em placeholder, com texto reciclado de outra seção. É por isso que não há nenhuma imagem dessa seção aqui — fotografar um placeholder seria vender uma seção que não existe.",[54,1263,1264,1267],{},[22,1265,1266],{},"Valores de produto."," Os preços em tela funcionam como estrutura, mas ainda dependiam de confirmação do cliente.",[54,1269,1270,1273],{},[22,1271,1272],{},"Uma inconsistência de copy que passou."," A seção de garantia tem o título \"Desafio 90 dias\" e, no corpo, \"caso você realize o desafio de 30 dias\". Duas datas diferentes na mesma seção. É erro de revisão, e o fato de estar aqui é o registro de que não peguei a tempo.",[10,1275,197],{"id":196},[15,1277,1278],{},"Desenhei os cards de depoimento antes de existir um depoimento real. Criei o componente a partir de um formato que imaginei — uma citação curta, um nome, cinco estrelas — e preenchi com placeholder para seguir o layout.",[15,1280,1281],{},"O problema aparece quando os depoimentos reais chegam: os três que o time já tinha escrito são longos, narrativos, com um começo de medo e uma virada. Não são citações curtas. São histórias. O card que desenhei aperta esse conteúdo até ele perder exatamente a parte que convence.",[15,1283,1284],{},"O certo era o inverso: pedir um depoimento real antes de desenhar qualquer coisa, desenhar o card em cima dele, e só depois generalizar para os outros. Fiz o movimento na ordem confortável em vez da ordem correta, e a seção que mais depende de conteúdo real é justamente a que foi desenhada sem ele.",{"title":206,"searchDepth":207,"depth":207,"links":1286},[1287,1288,1289,1290,1291,1297,1298,1299],{"id":12,"depth":207,"text":13},{"id":28,"depth":207,"text":29},{"id":48,"depth":207,"text":49},{"id":71,"depth":207,"text":72},{"id":107,"depth":207,"text":108,"children":1292},[1293,1294,1295,1296],{"id":1156,"depth":216,"text":1157},{"id":1166,"depth":216,"text":1167},{"id":1188,"depth":216,"text":1189},{"id":1204,"depth":216,"text":1205},{"id":176,"depth":207,"text":177},{"id":186,"depth":207,"text":187},{"id":196,"depth":207,"text":197},"\u002Fimages\u002Fcases\u002Fsos-beleza-cover.jpg","Hero da landing page SOS Beleza Absoluta — modelo sorrindo com a mão no cabelo ao lado do título \"Recupere sua autoestima e beleza natural\", sobre fundo bege claro.","Construir um sistema de estilos próprio sobre o Braip Foundations e usar uma landing page de quatorze seções em três breakpoints como teste de resistência dele.",{},4,"\u002Ftrabalhos\u002Fsos-beleza-absoluta","Março de 2026","Style guide e biblioteca de variáveis · UI e design responsivo · direção de arte e composições de produto",{"title":1087,"description":206},"trabalhos\u002Fsos-beleza-absoluta","Case study sobre o design da landing page do protocolo SOS Beleza Absoluta — a construção de um style guide dedicado com Color Styles, Text Styles e biblioteca de variáveis, e a página inteira desenhada como prova de que o sistema aguentava.",[619,239,242,621,1312,243],"Direção de arte",{"problem":1314,"action":1315,"outcome":1316},"Uma landing page longa nasce como um monte de decisões soltas — cada seção inventa seu próprio tom de bege, sua própria escala de título, seu próprio espaçamento. Em quatorze seções e três breakpoints, isso vira dívida antes de virar página.","Construí um style guide dedicado ao projeto — Color Styles, Text Styles e uma biblioteca de variáveis de cor e tipografia herdando o Braip Foundations — e só então desenhei a página, tratando cada seção como um teste de cobertura do sistema.","Quatorze seções em desktop, iPad e mobile sobre dezessete componentes próprios, sem cor ou tamanho de texto avulso. Os depoimentos e os valores de produto ficaram pendentes de conteúdo do cliente, e estão declarados como tais.","DktKtRcJYYGu_0NH-0xxUOTtU3MSZN8ZZDmtU2a84ks",{"id":1319,"title":1320,"body":1321,"cover":1515,"coverAlt":1516,"description":1517,"draft":226,"extension":227,"featured":226,"headline":1518,"meta":1519,"navigation":230,"order":1520,"path":1521,"period":1522,"platform":1523,"role":1524,"seo":1525,"stem":1526,"summary":1527,"tags":1528,"tldr":1531,"__hash__":1535},"casesPt\u002Ftrabalhos\u002Fcreators-figma-kit.md","Creators Figma Kit — temas de marca por variável",{"type":7,"value":1322,"toc":1507},[1323,1337,1344,1348,1354,1385,1389,1395,1433,1437,1443,1458,1462,1468,1471,1475,1484,1487,1489],[15,1324,1325,1326,1328,1329,1336],{},"Adotar um kit de oitocentos componentes não é economia de desenho — é decidir o que o time\nde marketing ",[22,1327,700],{}," vai precisar decidir a cada lançamento. Os componentes, os page templates\ne os 3.627 ícones deste arquivo são do ",[1330,1331,1335],"a",{"href":1332,"rel":1333},"https:\u002F\u002Fwww.relume.io",[1334],"nofollow","Relume Figma Kit"," na versão 3.5;\nnada disso é meu. O que é meu é a camada por cima: uma coleção de 42 variáveis com um modo por\ncriador, para que trocar de marca deixe de ser um trabalho de redesenho e passe a ser a troca\nde um seletor.",[15,1338,1339,1340,1343],{},"Caso ",[22,1341,1342],{},"em desenvolvimento",". O sistema está de pé e documentado; a fila de landing pages que\nvai provar ou derrubar essa aposta ainda não passou por ele.",[10,1345,1347],{"id":1346},"duas-camadas-não-uma","Duas camadas, não uma",[15,1349,1350],{},[36,1351],{"alt":1352,"src":1353},"Documentação de cor do Creators Figma Kit — tabelas de primitive variables Primary, Secundary e Tertiary com seus hexadecimais, seguidas do bloco Color Schemes com preview de esquema","\u002Fimages\u002Fcases\u002Fcreators-kit-variables.jpg",[15,1355,1356,1357,1360,1361,1364,1365,289,1368,289,1371,289,1374,289,1377,1380,1381,1384],{},"Quinze ",[22,1358,1359],{},"primitives"," guardam valor literal. Vinte e cinco variáveis ",[22,1362,1363],{},"semânticas"," —\n",[278,1366,1367],{},"Colors\u002FText",[278,1369,1370],{},"Background",[278,1372,1373],{},"Foreground",[278,1375,1376],{},"Border",[278,1378,1379],{},"Accent"," — nunca guardam cor: só\napontam para um primitive. É essa separação que faz o tema funcionar. Um componente pinta\no fundo com ",[278,1382,1383],{},"Background\u002FPrimary"," e nunca sabe qual hexadecimal recebeu.",[10,1386,1388],{"id":1387},"uma-paleta-por-criador","Uma paleta por criador",[15,1390,1391],{},[36,1392],{"alt":1393,"src":1394},"Seção Colors do style guide — paletas de cor em blocos, com as escalas primária, secundária e terciária lado a lado","\u002Fimages\u002Fcases\u002Fcreators-kit-colors.jpg",[15,1396,1397,1398,289,1401,343,1404,1407,1408,1410,1411,1414,1415,1418,1419,1421,1422,1425,1426,1429,1430,1432],{},"Três modos na mesma coleção: ",[278,1399,1400],{},"Base",[278,1402,1403],{},"Izadora K",[278,1405,1406],{},"[Valle]",". O ",[278,1409,1400],{}," roda em roxo\n(",[278,1412,1413],{},"#7250a1",") e rosa (",[278,1416,1417],{},"#fc65a9","). O ",[278,1420,1406],{}," troca por amarelo neon (",[278,1423,1424],{},"#edff00",") sobre uma\nescala quase preta (",[278,1427,1428],{},"#16151d",") — não é um ajuste de tom, é o oposto do ",[278,1431,1400],{},", e é\nexatamente o teste que a arquitetura precisava passar.",[10,1434,1436],{"id":1435},"a-tipografia-também-é-variável","A tipografia também é variável",[15,1438,1439],{},[36,1440],{"alt":1441,"src":1442},"Seção Typography do style guide — escala tipográfica com pesos e tamanhos de heading e corpo de texto","\u002Fimages\u002Fcases\u002Fcreators-kit-typography.jpg",[15,1444,1445,343,1448,1451,1452,1454,1455,1457],{},[278,1446,1447],{},"Font Family\u002FHeading",[278,1449,1450],{},"Font Family\u002FText"," são duas variáveis de texto, não uma. O ",[278,1453,1400],{},"\nusa Sora com Poppins; o ",[278,1456,1403],{}," troca para Federo com Gantari. A marca de um criador\nraramente está só na cor, e um sistema que temiza cor mas não tipografia entrega meia troca.",[10,1459,1461],{"id":1460},"o-modo-aplicado","O modo aplicado",[15,1463,1464],{},[36,1465],{"alt":1466,"src":1467},"Frame Valles do style guide — o tema Valle aplicado em composição de página, com tipografia e paleta próprias","\u002Fimages\u002Fcases\u002Fcreators-kit-valle.jpg",[15,1469,1470],{},"Aqui é onde a promessa fica verificável: nenhuma seção foi redesenhada para produzir esta\nimagem. Trocou-se o modo.",[10,1472,1474],{"id":1473},"próximo-passo-componentes-próprios","Próximo passo: componentes próprios",[15,1476,1477,1478,1480,1481,1483],{},"A camada de variáveis é a fundação; o que vem agora são componentes construídos sobre ela.\nO kit do Relume cobre o vocabulário genérico de uma landing page — hero, prova social,\npreço, CTA. O que ele não tem são as seções que as páginas de criador da Braip repetem a\ncada lançamento: bloco de oferta com preço e parcelamento, cronograma de protocolo, kit de\nproduto, garantia. Cada uma dessas desenhada como componente que consome ",[278,1479,1383],{},"\ne ",[278,1482,1447],{}," entra herdando o tema de qualquer criador no dia em que for criada.",[15,1485,1486],{},"É esse conjunto que decide se o sistema cumpre a promessa. Ele foi construído para reduzir o\ntempo de produção de uma landing page, e é isso que a arquitetura pretende — mas ainda não\nmedi. Sem um antes e um depois cronometrados, qualquer número aqui seria invenção.",[10,1488,197],{"id":196},[15,1490,1491,1492,1494,1495,1497,1498,1500,1501,1503,1504,1506],{},"Teria começado pelo ",[278,1493,1403],{},", não pelo ",[278,1496,1406],{},". Escolhi montar primeiro o tema mais\ndistante do ",[278,1499,1400],{}," porque era o mais interessante de fazer — e ele de fato provou que a\narquitetura aguenta uma inversão completa de paleta. Mas o ",[278,1502,1406],{}," é um tema meu, sem\nprazo e sem ninguém esperando; o ",[278,1505,1403],{}," é de um criador real, com landing page para\nsair. Terminei o experimento e deixei o caso de uso pela metade, que é exatamente a ordem\nerrada quando o sistema existe para atender demanda de time.",{"title":206,"searchDepth":207,"depth":207,"links":1508},[1509,1510,1511,1512,1513,1514],{"id":1346,"depth":207,"text":1347},{"id":1387,"depth":207,"text":1388},{"id":1435,"depth":207,"text":1436},{"id":1460,"depth":207,"text":1461},{"id":1473,"depth":207,"text":1474},{"id":196,"depth":207,"text":197},"\u002Fimages\u002Fcases\u002Fcreators-kit-cover.jpg","Capa do Creators Figma Kit sobre fundo roxo, com o logo da Figma em marca d'água e o selo de versão do kit.","Adotar um kit de oitocentos componentes não é economia de desenho — é decidir o que o time\nde marketing não vai precisar decidir a cada lançamento. Os componentes, os page templates\ne os 3.627 ícones deste arquivo são do Relume Figma Kit na versão 3.5;\nnada disso é meu. O que é meu é a camada por cima: uma coleção de 42 variáveis com um modo por\ncriador, para que trocar de marca deixe de ser um trabalho de redesenho e passe a ser a troca\nde um seletor.","Uma camada de variáveis sobre o Relume Figma Kit que troca a marca inteira de uma landing page em um clique de modo.",{},5,"\u002Ftrabalhos\u002Fcreators-figma-kit","2026 — em desenvolvimento","Figma Variables · Landing pages","Sistema de variáveis e curadoria do kit (componentes são do Relume Figma Kit)",{"title":1320,"description":1517},"trabalhos\u002Fcreators-figma-kit","Vitrine do sistema de temas que estou construindo sobre o Relume Figma Kit para o time de marketing da Braip — 42 variáveis em três modos que fazem uma landing page assumir a identidade de um criador sem redesenhar nenhuma seção.\n",[619,621,1529,239,1530],"Multi-marca","Em desenvolvimento",{"problem":1532,"action":1533,"outcome":1534},"Cada landing page de criador começava do zero — cor, tipografia e espaçamento redecididos a cada lançamento.","Montei uma camada de 42 variáveis com modos de marca sobre o Relume Figma Kit, separando primitives dos papéis semânticos.","Trocar o modo troca a marca da página inteira. Em desenvolvimento — o modo Izadora K ainda herda a paleta do Base.","kpASvutryekt3jbw02r7_MkfKIkbtvtXmBQPg5X-1oY",{"id":1537,"title":1538,"body":1539,"cover":1566,"coverAlt":1701,"description":206,"draft":226,"extension":227,"featured":226,"headline":1702,"meta":1703,"navigation":230,"order":1704,"path":1705,"period":933,"platform":1706,"role":1707,"seo":1708,"stem":1709,"summary":1710,"tags":1711,"tldr":1716,"__hash__":1720},"casesPt\u002Ftrabalhos\u002Fcopa-players.md","Copa Players — a campanha sazonal da Braip",{"type":7,"value":1540,"toc":1688},[1541,1543,1550,1561,1567,1569,1580,1583,1585,1596,1601,1603,1606,1609,1611,1615,1618,1621,1627,1631,1634,1637,1643,1645,1651,1654,1656,1676,1678,1685],[10,1542,13],{"id":12},[15,1544,1545,1546,1549],{},"A Braip é uma plataforma de infoprodutos, e esta landing page tem um alvo estreito: produtor\nque ",[22,1547,1548],{},"já fatura mais de dez mil"," em outra plataforma. Não é uma página de aquisição de\niniciante — é uma página de troca de fornecedor, dirigida a quem já tem operação rodando e\npor isso tem muito a perder numa migração.",[15,1551,1552,1553,1556,1557,1560],{},"A campanha usa a Copa como gancho de urgência. A oferta é concreta e datada: ",[22,1554,1555],{},"0% de taxa no\nPIX e 3,89% no cartão",", para migrações confirmadas até ",[22,1558,1559],{},"19\u002F07\u002F2026",", ou seja, só durante o\ncampeonato. O prazo é o que transforma \"considere migrar\" em \"decida agora\", e é ele que\njustifica a existência de uma página separada em vez de uma seção na LP institucional.",[15,1562,1563],{},[36,1564],{"alt":1565,"src":1566},"Hero da landing page Copa Players: letreiro tipográfico \"Jogue onde você ganha\" com troféu erguido, e abaixo o bloco de taxa com botão Falar com especialista.","\u002Fimages\u002Fcases\u002Fcopa-players-cover.jpg",[10,1568,29],{"id":28},[15,1570,1571,1572,1575,1576,1579],{},"Uma campanha sazonal chega com duas coisas para dizer na primeira dobra, e elas competem:\na ",[22,1573,1574],{},"metáfora"," (Copa, troféu, time, torcida) e o ",[22,1577,1578],{},"número"," (0% no PIX). A metáfora vende\natenção, o número vende decisão — e é o número que o público-alvo veio conferir.",[15,1581,1582],{},"O risco de campanha temática é a arte engolir a oferta: a pessoa entende que existe uma\npromoção da Copa e não entende qual é. O trabalho da hero era não deixar isso acontecer sem\nabrir mão do clima do campeonato, que é justamente o que dá licença para o senso de urgência.",[10,1584,49],{"id":48},[51,1586,1587,1590,1593],{},[54,1588,1589],{},"UI em alta fidelidade da LP de desktop e da versão mobile",[54,1591,1592],{},"Protótipo navegável dos dois breakpoints, incluindo a página de obrigado",[54,1594,1595],{},"Montagem da hero a partir dos assets de campanha",[15,1597,697,1598,1600],{},[22,1599,700],{}," foi meu: a copy, que chegou pronta em anexo do time de marketing; o design\nsystem, que é a biblioteca Braip Foundations; e o deploy, que ficou com o time de tecnologia.",[10,1602,72],{"id":71},[15,1604,1605],{},"A copy vir pronta muda a ordem do trabalho: em vez de descobrir a mensagem desenhando, o\ndesenho começa com a hierarquia já decidida por texto. \"Taxa 0% no PIX e 3,89% no cartão\" é\nmanchete, \"Fatura mais de 10 mil?\" é qualificador de público, \"Falar com especialista\" é a\núnica ação. Meu trabalho foi respeitar essa hierarquia em pixels, não renegociá-la.",[15,1607,1608],{},"Os componentes de base — botões, accordions do FAQ, cards, footer — vieram da Braip\nFoundations. Isso acelerou tudo que era estrutura e concentrou o tempo real onde ele fazia\ndiferença: a hero e o bloco de soluções.",[10,1610,108],{"id":107},[110,1612,1614],{"id":1613},"a-hero-como-cartaz-não-como-banner","A hero como cartaz, não como banner",[15,1616,1617],{},"O letreiro \"Jogue onde você ganha\" é tratado como arte tipográfica — recortado, com troféu\ne mãos de torcida invadindo as bordas, ocupando o topo inteiro como um pôster de campeonato.\nSó que ele para antes da metade da dobra. Abaixo dele a página muda de registro: fundo\nsólido, tipografia limpa do design system, o número da taxa em texto de verdade.",[15,1619,1620],{},"Essa separação é a decisão central. A camada de cima é emoção e reconhecimento da campanha;\na de baixo é informação. Manter a taxa como texto — e não embutida na arte — garante que ela\nseja legível em qualquer tela, selecionável, traduzível e editável sem reabrir o arquivo de\narte quando o número mudar.",[15,1622,1623],{},[36,1624],{"alt":1625,"src":1626},"Recorte do key visual da hero: composição tipográfica da campanha com troféu, torcida e elementos gráficos verdes sobre fundo roxo.","\u002Fimages\u002Fcases\u002Fcopa-players-hero-arte.jpg",[110,1628,1630],{"id":1629},"quatro-promessas-uma-de-cada-vez","Quatro promessas, uma de cada vez",[15,1632,1633],{},"O bloco de soluções da Braip Members poderia ser uma grade de cinco cards iguais — e seria\numa parede que ninguém lê. Optei por uma lista vertical em que apenas um item fica aberto,\ncom título, descrição e CTA, enquanto os outros ficam recolhidos como títulos clicáveis. Ao\nlado, uma imagem grande acompanha o item ativo.",[15,1635,1636],{},"Isso troca \"veja tudo\" por \"veja uma coisa\", que é o que a página precisa: o leitor não está\ncomparando funcionalidades, está sendo convencido de que existe valor além da taxa.",[15,1638,1639],{},[36,1640],{"alt":1641,"src":1642},"Seção de soluções da Braip Members: lista vertical com Vitrine de cursos, Upsell e automações, Suporte para alunos, Relatórios e avaliações e Braip Play, com imagem de apoio à direita.","\u002Fimages\u002Fcases\u002Fcopa-players-solucoes.jpg",[10,1644,177],{"id":176},[15,1646,1647,1648,571],{},"Entreguei os protótipos de alta fidelidade de desktop (1440 × 5349) e mobile (390 × 6275),\nmais a página de obrigado nos dois breakpoints, com a etiqueta de status do arquivo em\n",[22,1649,1650],{},"\"Liberado para validação\"",[15,1652,1653],{},"Não tenho número de conversão para mostrar. A página é do cliente, a instrumentação também,\ne o dado de performance ficou do lado dele — inventar um número aqui destruiria o motivo de\neste portfólio existir.",[10,1655,187],{"id":186},[51,1657,1658,1664,1670],{},[54,1659,1660,1663],{},[22,1661,1662],{},"O formulário de migração está em placeholder."," A Section 03 tem um retângulo cinza no\nlugar do form, um \"Lorem ipsum\" e três bullets com copy reaproveitada de outra landing\npage (\"Flexibilidade de horários\", \"Resultados rápidos e seguros\", um parágrafo sobre\nmarketing de afiliados que não pertence a esta campanha). É por isso que essa seção não\naparece em nenhuma imagem deste case.",[54,1665,1666,1669],{},[22,1667,1668],{},"A oferta diverge entre breakpoints."," O desktop anuncia \"3,89% no cartão\"; o mobile diz\n\"3,89% + R$ 2,49\". Uma das duas está errada e isso precisa ser resolvido com o time de\nmarketing antes de publicar.",[54,1671,1672,1675],{},[22,1673,1674],{},"Nenhuma métrica coletada"," do meu lado.",[10,1677,197],{"id":196},[15,1679,1680,1681,1684],{},"Desenhei a hero pelo desktop e só depois resolvi o mobile — e paguei por isso. A composição\nde cartaz que funciona em 1440 px não tem versão honesta em 390 px, então o mobile virou uma\nadaptação em vez de um desenho, com a arte encolhida no topo e a mensagem reescrita para\ncaber. Se recomeçasse, desenharia primeiro o bloco de oferta em mobile, onde o espaço é caro,\ne trataria a arte de campeonato como a camada que ",[22,1682,1683],{},"se expande"," no desktop.",[15,1686,1687],{},"E teria travado a copy do formulário antes de prototipar. Deixar uma seção em placeholder num\nprotótipo marcado como pronto para validação transfere para quem revisa um trabalho que era\nmeu — perceber que aquele bloco não é conteúdo, é buraco.",{"title":206,"searchDepth":207,"depth":207,"links":1689},[1690,1691,1692,1693,1694,1698,1699,1700],{"id":12,"depth":207,"text":13},{"id":28,"depth":207,"text":29},{"id":48,"depth":207,"text":49},{"id":71,"depth":207,"text":72},{"id":107,"depth":207,"text":108,"children":1695},[1696,1697],{"id":1613,"depth":216,"text":1614},{"id":1629,"depth":216,"text":1630},{"id":176,"depth":207,"text":177},{"id":186,"depth":207,"text":187},{"id":196,"depth":207,"text":197},"Hero da landing page Copa Players com o letreiro \"Jogue onde você ganha\", um troféu erguido e a headline da taxa sobre fundo roxo com traços verdes.","Uma landing page de migração que empresta a linguagem visual da Copa para vender a menor taxa do mercado.",{},7,"\u002Ftrabalhos\u002Fcopa-players","Landing page · Desktop e mobile","UI e protótipo em alta fidelidade (copy fornecida pelo time de marketing; componentes da Braip Foundations)",{"title":1538,"description":206},"trabalhos\u002Fcopa-players","Case curto sobre a LP promocional Copa Players: como a hero foi construída para entregar a metáfora do campeonato e o número da oferta na mesma dobra, sem que a arte engolisse a proposta.\n",[239,1712,1713,1714,1715],"Campanha sazonal","Hero design","Responsivo","Braip",{"problem":1717,"action":1718,"outcome":1719},"Vender migração de plataforma para quem já fatura, com a metáfora da Copa e o número da oferta disputando a mesma dobra.","Desenhei a hero como um cartaz em camadas — arte de campanha em cima, headline de taxa em texto vivo e CTA embaixo.","Protótipos de desktop, mobile e página de obrigado entregues e marcados como liberados para validação. Conversão ficou com o cliente.","GDj3oZwaaJRAw7c6hiFOi_u-4ZyGBheZhtd3OgYr4io",{"id":1722,"title":1723,"body":1724,"cover":1740,"coverAlt":1840,"description":1841,"draft":226,"extension":227,"featured":226,"headline":1842,"meta":1843,"navigation":230,"order":1844,"path":1845,"period":1846,"platform":1847,"role":1848,"seo":1849,"stem":1850,"summary":1851,"tags":1852,"tldr":1858,"__hash__":1862},"casesPt\u002Ftrabalhos\u002Faml-locacoes.md","AML Locações — site institucional",{"type":7,"value":1725,"toc":1832},[1726,1735,1741,1745,1763,1769,1775,1781,1785,1788,1794,1798,1805,1811,1815,1818,1824,1826,1829],[15,1727,1728,1729,1734],{},"A ",[1330,1730,1733],{"href":1731,"rel":1732},"https:\u002F\u002Famllocacoeseservicos.com.br",[1334],"AML Locações e Serviços"," aluga caminhão munck em\nGovernador Valadares e região, e opera desde 1996. É o tipo de cliente cujo produto é peso:\nguindaste, carga, responsabilidade. O site precisava carregar essa sensação sem virar\ncatálogo técnico — quem contrata munck decide por confiança e por telefone, não por\ncomparação de especificações.",[15,1736,1737],{},[36,1738],{"alt":1739,"src":1740},"Topo do site da AML: menu, título \"Deixe o pesado por nossa conta!\" e botão Fale conosco sobre foto de caminhão munck em operação.","\u002Fimages\u002Fcases\u002Faml-cover.jpg",[10,1742,1744],{"id":1743},"o-design","O design",[15,1746,1747,1750,1751,1754,1755,1758,1759,1762],{},[22,1748,1749],{},"Paleta."," Verde-petróleo (",[278,1752,1753],{},"#004A4E",") como base, um verde mais claro (",[278,1756,1757],{},"#006A6F",") para\nseparar blocos e dourado (",[278,1760,1761],{},"#D79D51",") reservado só para ação e destaque. Escolhi escuro como\ncor dominante para as fotos de equipamento — céu aberto, ferro, canteiro de obra — pousarem\ncom contraste sem precisar de tratamento pesado. O dourado aparece pouco, e por isso funciona:\nonde ele está, é para clicar.",[15,1764,1765,1768],{},[22,1766,1767],{},"Tipografia."," Plus Jakarta Sans nos títulos, Heebo no texto corrido. A headline \"Deixe o\npesado por nossa conta!\" é a única frase da primeira dobra em tamanho grande — uma promessa\nde serviço em linguagem de gente, não de equipamento.",[15,1770,1771,1774],{},[22,1772,1773],{},"Estrutura."," Página única com cinco movimentos: promessa, quatro pilares (excelência,\ninovação, comprometimento, segurança), três portas para as páginas internas (equipamentos,\nserviços, sobre), prova social e contato. Cada bloco existe para reduzir uma dúvida\nespecífica, na ordem em que a dúvida aparece.",[15,1776,1777],{},[36,1778],{"alt":1779,"src":1780},"Bloco de navegação do site: apresentação da AML e três cartões que levam para Equipamentos, Serviços e Sobre.","\u002Fimages\u002Fcases\u002Faml-navegacao.jpg",[110,1782,1784],{"id":1783},"prova-social-como-seção-inteira-não-como-rodapé","Prova social como seção inteira, não como rodapé",[15,1786,1787],{},"Serviço pesado se vende por reputação. Em vez de espremer depoimentos numa faixa, dei a eles\no maior bloco da página, com relatos completos — atendimento, pontualidade, execução — em vez\nde frases de vitrine. É a seção mais alta do site, e isso é intencional: é o argumento que\nconverte.",[15,1789,1790],{},[36,1791],{"alt":1792,"src":1793},"Seção de depoimentos do site da AML, com relatos de clientes em cartões sobre fundo claro.","\u002Fimages\u002Fcases\u002Faml-depoimentos.jpg",[110,1795,1797],{"id":1796},"duas-rotas-de-contato-nenhuma-escondida","Duas rotas de contato, nenhuma escondida",[15,1799,1800,1801,1804],{},"O rodapé da página oferece formulário ",[22,1802,1803],{},"e"," WhatsApp, porque esse público resolve por\nmensagem. Um FAQ curto responde antes do contato as três perguntas que sempre chegam —\nalcance da lança, dimensões do caminhão, peso suportado — para que a conversa comece já na\nnegociação, e não na especificação.",[15,1806,1807],{},[36,1808],{"alt":1809,"src":1810},"Bloco final do site: chamada \"Faça seu orçamento!\", botão de WhatsApp e FAQ com perguntas sobre alcance, dimensões e capacidade do caminhão.","\u002Fimages\u002Fcases\u002Faml-faq.jpg",[10,1812,1814],{"id":1813},"como-foi-feito","Como foi feito",[15,1816,1817],{},"WordPress com Elementor — escolha do cliente, que precisava editar conteúdo sozinho depois.\nIsso definiu o desenho: nada que dependesse de código customizado para continuar funcionando\nquando outra pessoa mexesse. Fiz o design, o tratamento das fotos de equipamento, a montagem\ne a estrutura de SEO on-page (títulos, hierarquia de headings, meta title com a região\natendida).",[15,1819,1728,1820,1823],{},[22,1821,1822],{},"copy é da Bianca Lima"," — incluindo a headline. Meu trabalho foi dar a ela a hierarquia e\no espaço que ela pedia.",[10,1825,197],{"id":196},[15,1827,1828],{},"Deixei a página inicial com 4.997 px de altura no desktop e 6.130 px no mobile — no celular,\na prova social só chega depois de muita rolagem, justamente onde ela é mais necessária. Se\nrefizesse, cortaria o bloco de pilares no mobile e subiria os depoimentos.",[15,1830,1831],{},"Também não instrumentei nada. Não há evento de clique no botão de WhatsApp nem no envio do\nformulário, então não sei por qual das duas rotas os orçamentos realmente chegam — e essa era\na única pergunta que o site poderia ter respondido sozinho.",{"title":206,"searchDepth":207,"depth":207,"links":1833},[1834,1838,1839],{"id":1743,"depth":207,"text":1744,"children":1835},[1836,1837],{"id":1783,"depth":216,"text":1784},{"id":1796,"depth":216,"text":1797},{"id":1813,"depth":207,"text":1814},{"id":196,"depth":207,"text":197},"Topo do site da AML Locações com o título \"Deixe o pesado por nossa conta!\" sobre foto de caminhão munck e fundo verde-petróleo.","A AML Locações e Serviços aluga caminhão munck em\nGovernador Valadares e região, e opera desde 1996. É o tipo de cliente cujo produto é peso:\nguindaste, carga, responsabilidade. O site precisava carregar essa sensação sem virar\ncatálogo técnico — quem contrata munck decide por confiança e por telefone, não por\ncomparação de especificações.","Um site de locação de caminhão munck desenhado para parecer tão sólido quanto o equipamento que aluga.",{},8,"\u002Ftrabalhos\u002Faml-locacoes","2025","Site institucional · WordPress e Elementor","Design, tratamento de imagem e build no Elementor (copy de Bianca Lima)",{"title":1723,"description":1841},"trabalhos\u002Faml-locacoes","Vitrine do site da AML Locações e Serviços: verde-petróleo e dourado, tipografia grande e um caminho curto até o WhatsApp. Design, arte e montagem no Elementor; a copy é da Bianca Lima.\n",[1853,1854,1855,1856,1857],"Site institucional","WordPress","Elementor","Identidade visual","Cliente local",{"problem":1859,"action":1860,"outcome":1861},"Uma locadora de munck ativa desde 1996 sem presença digital que passasse a mesma confiança do serviço.","Desenhei um site de página única com paleta verde-petróleo e dourada, tipografia grande e contato a um clique em qualquer altura da rolagem.","Site no ar em amllocacoeseservicos.com.br, com orçamento por formulário e por WhatsApp. Métricas ficaram com o cliente.","J6ZFZptVnk63LKiUrJWExqE09Ny7meXqOsP38ylylAM",1787766318858]