FUNDAMENTOS · 02 · TIPOGRAFIA
Celere DS v1.0 · Engenharia à Vista

Quatro papéis, uma régua só.

Plus Jakarta Sans carrega o título. Neo Sans Intel carrega o eyebrow, e só ele. Manrope carrega a prosa e também todo número, aí com tabular-nums, porque número é dado e dado alinha em coluna.

São três famílias em quatro papéis: corpo e dado dividem a Manrope, separados pelo tratamento e não pela fonte. Nenhuma delas tem eixo de largura, então a v1 não usa font-variation-settings em lugar nenhum.

02.1 · FAMÍLIAS

Os quatro papéis

Cada papel tem um token e um uso exclusivo. Nenhum invade a função do outro: título nunca em corpo, número nunca em display.

Plus Jakarta Sans

Display · variável, eixo wght 200–800 --font-display
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz ÁÂÃÇÉÊÍÓÔÕÚ 0123456789
Orçamento executivowght 500 · piso
Orçamento executivowght 620 · h2
Orçamento executivowght 700 · h1 e teto

Só título. Peso de trabalho entre 500 e 700, nunca 400, que some no tamanho grande. Título vai em sentence case: caixa alta é privilégio do eyebrow.

O teto é 700, e não 800. A carta que pediu esta família se contradiz: o cabeçalho diz Extrabold, que é 800, e a nota logo abaixo diz "peso de trabalho entre 500 e 700". Fechado em 700 em 28/08/2026, porque 800 fica pesado demais no corpo grande. O h2 ficou em 620 e não subiu junto: com o h1 em 650 os dois quase não se distinguiam, e é o degrau de 80 que faz o título de seção recuar de verdade.

Neo Sans Intel

Eyebrow · estática, um peso só (Medium) --font-eyebrow
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz ÁÂÃÇÉÊÍÓÔÕÚ 0123456789
Ciclo de incorporaçãoeyebrow · 0.8125rem
Orçamento executivoeyebrow curto · 0.6875rem

Só eyebrow, e sempre em caixa alta com o tracking do token --ls-eyebrow. É a única família hospedada aqui em vez de vir do Google, e a única com um peso só.

Manrope

Corpo, interface e navegação · variável, wght 200–800 --font-body
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz ÁÂÃÇÉÊÍÓÔÕÚ 0123456789

O Budget Analytics reúne a base única de informações da obra: EAP, composições, insumos e medições em um só lugar, para que contrato, compra e realizado conversem com o orçamento aprovado na viabilidade do terreno.

Curva físico-financeira400 · corpo
Curva físico-financeira500 · rótulo e botão
Curva físico-financeira600 · título de card

Parágrafo, rótulo de campo, item de menu, texto de botão. Nunca carrega quantidade: a quantidade sai daqui e vai para o papel de dado.

Manrope tabular

Dado, código de fase e caption técnica · 400, 500 --font-mono
ABCDEFGHIJKLMNOPQR
0123456789 R$ m² m³ % · , .
R$ 6.142.982,72total do orçamento
30.539,79 m²área privativa
F4 · EXECUTIVOcódigo de fase
04.02.017item da EAP
+4,7%desvio do realizado

Regra de ouro: qualquer quantidade renderiza aqui, com font-variant-numeric: tabular-nums. Vale para preço, área, prazo, percentual, data, código de EAP e número de telefone.

Este papel também desliga ligadura. A Manrope liga dois hifens num travessão, e é uma ligadura de texto, ativa por padrão. Numa fonte de código isso nunca acontecia; numa face de texto acontece, e o papel de dado é justamente quem carrega nome de token, código de EAP e identificador, onde a sequência tem que sair literal. Sem font-variant-ligatures: none o nome --font-mono aparece na tela como --font-mono, com um traço só.

O token se chama --font-mono e a fonte não é monoespaçada. O nome ficou porque hub, site e ds-celere o referenciam em dezenas de arquivos, e renomear quebraria os três. Neste sistema "mono" nomeia o papel de DADO, não a natureza da face. O alinhamento de coluna, que antes vinha de graça da monoespaçada, agora vem de tabular-nums, e por isso ele é obrigatório em todo uso deste token. A cauda da pilha continua monoespaçada de propósito: se o webfont não carregar, a coluna sobrevive sem depender do tabular.

02.2 · ESCALA

Escala fluida, do hero ao micro

Cada degrau abaixo está renderizado no tamanho real desta janela. Redimensione e os clamp trabalham: o mesmo token entrega mobile e desktop sem breakpoint manual.

Custo de obra previsível
--text-hero clamp(2.5rem, 8vw, 4.75rem) lh 1.02 · ls -0.03em · wdth 92 H1, um por página
Uma solução para cada fase
--text-h2 clamp(1.9rem, 5vw, 3rem) lh 1.1 · ls -0.02em · wdth 92 Título de seção
Acompanhamento de Custos
--text-h3 clamp(1.35rem, 3vw, 1.75rem) lh 1.15 · wdth normal Título de card e subseção
Composições e insumos
--text-h4 1.125rem · fixo lh 1.3 Título dentro de bloco denso

Governança, controle e inteligência aplicados ao custo da sua obra.

--text-lead clamp(1.1rem, 2vw, 1.3rem) lh 1.5 · cor ink-2 Subheadline, limite de 65ch

O Levantamento Quantitativo extrai do projeto a quantidade real de cada serviço, item por item, para que o orçamento pare de nascer de estimativa e passe a nascer de medida.

--text-body 1rem · lh 1.65 Manrope 400 Corpo padrão

Base de preços SINAPI de julho de 2026, com desoneração aplicada.

--text-small 0.875rem Caption e meta · ink-3 Piso para texto de leitura
Do terreno à entrega
--text-eyebrow 0.8125rem · ls 0.16em Neo Sans Intel 500, uppercase Rótulo de seção · teal-deep
04.02.017 · CONCRETO USINADO FCK 30 MPA · M³
--text-micro 0.75rem Mono, código e unidade Só dado técnico, nunca prosa
+737
--text-stat clamp(2.25rem, 6vw, 3.5rem) Mono 500 · tabular · lh 1 Número de destaque, com count-up
+269
clientes atendidos
+30 BI R$
em custos de construção orçados
+10 MI M²
de área em projetos realizados
11
anos de mercado

// os quatro números acima vêm de site/data/stats.ts, a fonte única. Alterou lá, o site inteiro acompanha.

02.3 · O EIXO QUE SAIU

O contraste mudou de lugar: era eixo, virou família

Até a v0 o título e o eyebrow eram a mesma família, a Archivo, separados pelo eixo de largura: wdth 92 adensava a manchete, wdth 125 rareava o rótulo. Nenhuma das três famílias da v1 tem eixo de largura, então esse contraste precisava sair de outro lugar. Ele saiu do lugar mais forte que existe: agora título e eyebrow são famílias diferentes, e a distinção não depende mais de um eixo que o navegador pode ignorar.

Eyebrow · Neo Sans Intel Ciclo de incorporação · do terreno à entrega
Título · Plus Jakarta Sans Ciclo de incorporação

O que a troca custou, medido no navegador

Mesmo texto, mesmo corpo, com as seis famílias carregadas de fato e um controle contra família inexistente para provar que nenhuma caiu em fallback.

Papelv0v1LarguraAltura-x
H1 · 48pxArchivo wdth 92Plus Jakarta Sans+11,5%+3,2%
H2 · 32pxArchivo wdth 92Plus Jakarta Sans+9,8%+3,0%
Eyebrow · 13pxArchivo wdth 125Neo Sans Intel−26,7%+8,3%
Corpo · 16pxInstrument SansManrope0,0%+5,9%
Dado · R$ 6.142.982,72Spline Sans MonoManrope tabular−19,7%−1,0%
Dado · 04.02.017Spline Sans MonoManrope tabular−16,8%−1,0%

Nenhum desses números era óbvio antes de medir. O corpo não mexeu: a Manrope entrega a mesma largura de linha da Instrument Sans no mesmo corpo, e como corpo é a maior parte do sistema, a maior parte do sistema não refluiu. O título alargou 10%, e é ali que viúva e estouro nascem. O eyebrow encolheu um quarto, medido no papel real, com o tracking que ele de fato usa, e ganhou 8,3% de altura de caixa alta em troca. Perseguir a largura da v0 só pelo tracking exigiria 0,39em, que estilhaça a palavra em letras soltas: o token subiu de 0.14em para 0.16em, que é o quanto a face mais estreita pede sem se desmanchar. O dado encolheu, o que é seguro, e deixou de ser monoespaçado, o que não é.

--font-display --font-eyebrow --ls-eyebrow

// os tokens --wdth-condensed e --wdth-expanded saíram do sistema na v1, e com eles as 158 declarações de font-variation-settings que os usavam. Pedir um eixo que a fonte não tem não quebra nada, e é justamente por isso que fica: declaração inerte engana quem lê o código.

02.4 · NÚMERO TABULAR

Tabular-nums, a coluna que fecha na vírgula

Em planilha de orçamento a vírgula tem que cair na mesma vertical em todas as linhas, senão o olho não compara. Com dígito de largura fixa mais alinhamento à direita, a casa decimal se empilha sozinha.

Correto · mono tabular alinhado à direita
ServiçoUn.QuantidadePreço unit.Total
Concreto usinado fck 30 MPam³1.284,50512,90658.820,05
Aço CA-50 em barraskg96.412,008,74842.640,88
Alvenaria de bloco cerâmicom²12.075,3096,451.164.662,69
Revestimento em porcelanatom²8.940,10187,201.673.586,72
Forma de madeira compensadam²21.560,0074,301.601.908,00
Impermeabilização de lajem²3.418,7558,90201.364,38
Total do lote de serviços (R$)6.142.982,72

Todas as vírgulas caem na mesma vertical dentro de cada coluna. O total lê como soma da coluna, não como número solto.

Proibido · dígito proporcional na coluna
ServiçoUn.QuantidadePreço unit.Total
Concreto usinado fck 30 MPam³1.284,50512,90658.820,05
Aço CA-50 em barraskg96.412,008,74842.640,88
Alvenaria de bloco cerâmicom²12.075,3096,451.164.662,69
Revestimento em porcelanatom²8.940,10187,201.673.586,72
Forma de madeira compensadam²21.560,0074,301.601.908,00
Impermeabilização de lajem²3.418,7558,90201.364,38
Total do lote de serviços (R$)6.142.982,72

Os mesmos valores em Manrope com dígito proporcional, ou seja, sem o tabular-nums. O 1 é estreito, o 4 é largo, e a vírgula passa a dançar de linha em linha. É exatamente o que acontece quando alguém usa o token de dado e esquece a declaração, e é por isso que ela não é opcional.

.mono .num font-variant-numeric: tabular-nums --ls-mono: 0.06em

// o mono tabular também é o que permite o count-up sem layout shift: a largura do número não muda enquanto ele sobe.

02.5 · A FONTE DO EYEBROW

Por que o eyebrow tem uma família só para ele

A revisão da v0 pediu Neo Sans Intel no subtítulo, e a Celere autorizou o uso em 27/08/2026. É o único papel do sistema que não usa uma das duas famílias do Google, e o único que carrega um arquivo hospedado aqui.

O rótulo como ele está no ar Ciclo de incorporação · do terreno à entrega
Ciclo de Incorporação

Neo Sans Intel Medium, o único peso que o sistema carrega, no token --font-eyebrow, com o tracking de --ls-eyebrow.

O que essa escolha obriga o sistema a fazer

Um arquivo, um peso, um papel. A face é estática, então não há eixo de peso para percorrer: o eyebrow é sempre Medium. Ela vem declarada cobrindo a faixa 300–600 justamente para que uma regra distraída pedindo 600 caia no Medium em vez de virar negrito sintético.

Ela é hospedada, não vem do Google. Fica em assets/fonts/, subsetada de 289 para 225 glifos, o que a deixa em 20,2 KB. O subset cobre Latin-1 inteiro mais a pontuação da casa, com folga de sobra para qualquer rótulo em português.

Ela não tem eixo de largura, e nenhuma das três tem. É por isso que a seção 02.3 deixou de falar de wdth e passou a falar do que ocupou o lugar dele: o eyebrow, que antes se separava do título pelo eixo, agora se separa pela família.

--font-eyebrow Neo Sans Intel Medium · 225 glifos · 20,2 KB --ls-eyebrow: 0.16em