Design System · versão 1.0 · novembro 2026

Sistema de design da Clínica Vitalis

Tudo o que foi decidido nesta conversa, destilado em regras reutilizáveis. Leve este arquivo para qualquer projeto — novos sites, landing pages, páginas internas — e aplique sem redefinir nada. As cores são imutáveis; o resto é padrão de aplicação.

01 Paleta de cores — imutável

Extraída do template Medix e congelada por decisão do dono do projeto. Nenhuma cor fora desta lista pode aparecer em qualquer deliverable. O fundo de página é sempre #f3f6ef; azul-marinho é cor de elemento (texto, botão, bloco de destaque), nunca de fundo de página inteira.

Fundo

#f3f6ef

fundo de página inteira

Azul-marinho

#0b1e5b

texto, títulos, botão sólido, bloco CTA

Coral

#f6a290

CTA primário, traços de eyebrow, detalhes

Ciano

#cff0f9

cards de destaque, badges, avatares

Ciano-suave

#ddf4fd

cards secundários (variação clara do ciano)

Rosa

#f6d1cc

cards de destaque, badges alternos

Rosa-suave

#f6e9e6

cards secundários (variação clara do rosa)

Salmão

#f7ccc6

terceiro nível de card, avatares

Pêssego

#ffe8d3

cards de destaque, círculos de artigos

Lilás

#cbc0d3

círculos de planos, avatares, detalhes

Creme

#f2e9e4

blocos de depoimento, fundos alternados

Branco

#ffffff

cards, badges, ícones, widget

Regra de combinação: fundo da página sempre Fundo (#f3f6ef). Seções de destaque usam um dos 5 pastéis (ciano, rosa, pêssego, creme, salmão). Texto é sempre azul-marinho sobre fundo claro, ou branco sobre azul-marinho. Coral é o único acento quente — botão primário e detalhes gráficos. Sombra padrão de card: 0 28px 56px -30px rgba(11,30,91,.3).

02 Tipografia — EB Garamond em tudo

Duas fontes fixas. Display: Sacker's — a Sackers Gothic da Monotype (estilo gravador, caps-only); como é comercial, o equivalente livre no Google Fonts é a Julius Sans One. Ela assina títulos, menu, botões, rótulos e badges — sempre em caixa alta com tracking. Texto corrido: EB Garamond (gratuita, PT-BR completo), porque uma fonte uppercase-only não lê parágrafos. Nenhuma terceira fonte entra.

Display Sacker's

Sua saúde, acompanhada.

Título · step-2

Cuidado completo, sem complicação

Subtítulo · step-1

Conheça nossos médicos

Corpo · step-0

Texto corrido com medida máxima de 29–30rem. Opacidade .75–.82 quando for texto de apoio.

Eyebrow

Clínica multidisciplinar

Rótulo · step--1

Especialidade · resultado em 24h

Regras: ① eyebrow em versalete com tracking largo e traço coral antes do texto; ② ênfase em títulos sempre em itálico, nunca em cor; ③ números com font-variant-numeric:lining-nums; ④ parágrafos nunca ultrapassam ~65 caracteres por linha; ⑤ rótulos de dado (cargo, data, preço) em versalete com tracking .14–.2em; ⑥ espaçamento entre linhas ENXUTO: corpo 1.42, texto de apoio no máximo 1.45 — nunca mais que isso; ⑦ itens de menu e navegação sempre em MAIÚSCULAS com tracking .14em na Sacker's; ⑧ títulos, botões, badges e rótulos usam a Sacker's (Sackers Gothic, Monotype 1994 — caps-only; equivalente livre: Julius Sans One) e o texto corrido permanece em EB Garamond.

03 Espaço & forma

Ritmo vertical

Seções respiram com clamp(80px, 10vw, 136px) de respiro. Cabeçalho de seção (.sec-head) termina com margem de clamp(2.6rem, 5vw, 4.2rem). Gap padrão entre cards: clamp(20px, 2.5vw, 28px).

Raios de borda

Pequeno 16px (inputs) · médio 24px (widget, cards médios) · grande 36px (cards de conteúdo) · pílula 999px (botões, badges, nav, letreiros). Blocos de destaque (CTA, quote) podem usar 40–48px.

Sombras

Sempre azul-marinho translúcido, nunca cinza/preto puro. Card: -30px de spread. Elemento flutuante (widget, badge): 0 36px 72px -36px rgba(11,30,91,.4).

Estrutura de seção

  1. Eyebrow — categoria da seção, versalete + traço coral
  2. Título — step-2, com ênfase itálica
  3. Lider — 1 frase de apoio, opacidade .78
  4. Conteúdo — cards/lista em grid de 3 colunas (2 no tablet, 1 no mobile)
  5. Ação — link "Saiba mais →" ou botão, sempre alinhado à esquerda do conteúdo

Cabeçalho de seção centrado só quando a seção é "vitrine" (planos, médicos). Seções de leitura são alinhadas à esquerda.

04 Componentes

Botões

Botão primário = coral (no hover, vira navy). Em fundo navy, primário continua coral. Setas "→" ganham deslize de 4px no hover. Nunca mais de um botão sólido visível por bloco.

Badges & pílulas

Resultados em 24h Cardiologia Oftalmologia Instagram

Badges flutuantes (brancos, sombra) anunciam benefícios; pílulas de especialidade alternam ciano e rosa; pílulas de rede social têm borda fina.

Formulário & dados

MARCBOLN
18especialidades

Rótulo de campo em versalete coral-esmaecido; input com raio 12–14px e fundo branco. Avatar = iniciais sobre círculo pastel (rotação ciano→pêssego→rosa→lilás→salmão→creme). Estatística = número grande + rótulo versalete, com traço coral à esquerda.

Blocos de assinatura

Texto de depoimento aqui — uma ideia central, dita com as palavras do cliente.
Nome · relação com a clínica

Selo girante (texto circular em EB Garamond, núcleo coral com cruz branca) assina o hero. Depoimento vive em bloco creme com aspas gigantes em coral translúcido.

05 Movimento — coreografado, não decorativo

Padrões fixos

  1. Entrada coreografada — elementos do hero sobem 28px em sequência (delays .08s → .62s), easing cubic-bezier(.22,1,.36,1), duração .9s
  2. Contadores — números sobem em 1,1s com desaceleração cúbica quando entram na tela
  3. Microinterações de hover — translateY(-8px) em cards, seta desliza 4px, sublinhado coral cresce da esquerda, ícone gira -8°, halo pastel escala 1.35
  4. Selo & flutuantes — rotação contínua de 22s; flutuação vertical de 6s alternando ±12px
  5. Letreiro duplo — duas fileiras de pílulas deslizam em direções opostas (34s / 38s) com inclinação de -2°

Restrições

  1. Sem revelação dependente de scroll/JS — todo conteúdo deve existir visível por padrão; animação é camada, nunca porta de entrada. (Aprendido em produção nesta conversa.)
  2. Uma assinatura por página — o selo girante é o único elemento em rotação contínua
  3. Easing único — cubic-bezier(.22,1,.36,1) para tudo que entra; linear só em letreiros
  4. Respeito absoluto a prefers-reduced-motion: reduce — desligar todas as animações
  5. Nada de parallax nem fade longo demais (>1s)

06 Conteúdo — português do Brasil, sempre real

Tom de voz

  1. Português do Brasil, sem Lorem ipsum — todo texto é real e específico
  2. Tom caloroso e direto: "Sua saúde, acompanhada de perto", não "Soluções inovadoras em healthtech"
  3. Promessas concretas: "Resultado em 24h", "30 minutos, sem custo" — número sempre que possível
  4. Verbos de ação nos botões: "Agendar consulta", "Ver o que está incluído" — nunca "Enviar" ou "Saiba mais" sozinho em CTA principal
  5. Empatia antes de técnica: "sem jargão", "sem fila de espera", "sem surpresa na fatura"

Placeholders obrigatórios

Dados que o dono precisa preencher antes de publicar aparecem sempre entre colchetes — nunca inventados:

[telefone] · [endereço]

Nomes de médicos, CRMs, preços e avaliações (4,9) são ilustrativos e levam nota de rodapé "*Valores ilustrativos — substitua pelos dados reais."

Regra: é pior um placeholder visível do que um dado falso plausível em material que será impresso ou publicado.

07 Regras de ouro — o que aprendemos nesta conversa

  1. Cores congeladas — a paleta do item 01 nunca muda, nem "aproximação". Antes de entregar, medir o resultado (screenshot + amostragem de pixels) e confirmar que cada fundo/elemento usa o hex exato.
  2. Duas fontes fixas — Sacker's (Sackers Gothic; equivalente livre Julius Sans One) em caixa alta para títulos, menu, botões e rótulos; EB Garamond para texto corrido. Nenhuma outra fonte entra.
  3. Conteúdo real em PT-BR — zero Lorem ipsum em deliverable para o dono; copy de verdade desde a primeira versão.
  4. Placeholders honestos — [colchetes] para o que falta; nota de ilustratividade para nomes e preços.
  5. Design de referência — buscar padrão nos melhores shots de Behance/Dribbble (health/medical/editorial): nav flutuante em pílula, booking hero, eyebrows em versalete, prova social, escala tipográfica fluida.
  6. Verificar antes de entregar — renderizar e inspecionar a imagem final: texto cortado, sobreposição, seção invisível, contraste. Falha encontrada = corrigida antes da entrega.
  7. Acessibilidade de piso — foco visível (outline coral 3px), contraste AA, reduced-motion respeitado, alvos de toque ≥44px.
  8. Classe A, não "bom o suficiente" — cada rodada de feedback deve subir o nível: assinatura visual única por página, coreografia, acabamento de detalhe.
  9. Espaçamento enxuto — line-height 1.42 no corpo, 1.45 no texto de apoio, no máximo; gaps de lista apertados (.25rem); nada de linhas "flutuando".
  10. Menu em maiúsculas — todo item de navegação é uppercase com tracking .1em.
  11. Pílula nunca é cor-de-fundo — toda pílula, badge, chip e nav flutuante tem preenchimento SÓLIDO (branco ou uma cor da paleta). Fundo transparente, translúcido ou igual ao fundo da página é proibido: a pílula desaparece. (Violado e corrigido em produção.)

08 Tokens CSS — cole e use

Copie este bloco como :root de qualquer projeto novo do sistema:

/* Design System Clínica Vitalis v1.0 */ :root{ /* cores — imutáveis */ --navy:#0b1e5b; --coral:#f6a290; --cyan:#cff0f9; --cyan-soft:#ddf4fd; --pink:#f6d1cc; --pink-soft:#f6e9e6; --salmon:#f7ccc6; --lilac:#cbc0d3; --cream:#f2e9e4; --peach:#ffe8d3; --bg:#f3f6ef; --white:#ffffff; /* tipografia */ --font:'EB Garamond',serif; --font-display:'Julius Sans One',sans-serif; /* Sacker's - display */ --step--2:clamp(.72rem,.7rem+.15vw,.78rem); --step--1:clamp(.8rem,.76rem+.2vw,.88rem); --step-0:clamp(1rem,.95rem+.25vw,1.12rem); --step-1:clamp(1.2rem,1.08rem+.6vw,1.5rem); --step-2:clamp(1.7rem,1.35rem+1.8vw,2.7rem); --step-3:clamp(2.6rem,1.7rem+4.4vw,5.4rem); --step-4:clamp(4rem,3rem+9vw,11rem); /* forma & espaço */ --r-sm:16px; --r-md:24px; --r-lg:36px; --r-pill:999px; --gap:clamp(20px,2.5vw,28px); --sec:clamp(80px,10vw,136px); --ease:cubic-bezier(.22,1,.36,1); --shadow-card:0 28px 56px -30px rgba(11,30,91,.3); --shadow-float:0 36px 72px -36px rgba(11,30,91,.4); }

Este documento é a fonte da verdade. Quando surgir uma decisão nova de design em conversas futuras, ela entra aqui como regra numerada — e a versão sobe.