/* =========================================================================
   TIPOGRAFIA — Center Balanças e Automação
   =========================================================================

   O QUE HAVIA ANTES. O site herdou do template da DigiSat tres familias, todas
   por @import de fonts.googleapis.com dentro do style.css: Quicksand no corpo,
   Poppins nos titulos e Nunito nos botoes. Tres familias e uma a mais do que a
   maioria dos projetos precisa, e as tres escolhidas puxam para o mesmo lado —
   geometricas de terminacao arredondada, com cara de aplicativo infantil. Nao
   e o que uma empresa de balancas e automacao comercial com 35 anos de praca
   quer dizer de si, e nao tem nada a ver com a marca: o "CENTER" do logo e um
   grotesco QUADRADO, de hastes retas e terminacoes cortadas a 90 graus.

   O QUE ENTROU, E POR QUE.

   ARCHIVO nos titulos, nos botoes e em tudo que e caixa-alta. E um grotesco de
   inspiracao industrial (a familia nasceu para uso em jornal e sinalizacao),
   de esqueleto reto e largura generosa — o mesmo desenho do "CENTER" do logo.
   Posto em 700 com o espacamento levemente fechado, o titulo passa a ter a
   mesma voz do letreiro da marca em vez de brigar com ele. E, em caixa-alta
   com espacamento aberto, e a copia direta do "BALANÇAS & AUTOMAÇÃO" que ja
   esta escrito embaixo do logo.

   INTER no corpo do texto. Foi desenhada para tela, tem altura-de-x alta (le
   bem em 15-16px, que e o tamanho em que 90% do site vive), numerais de
   largura fixa e, o que mais importa aqui, acentuacao portuguesa desenhada e
   nao improvisada — til, cedilha e circunflexo continuam legiveis em corpo
   pequeno, que e onde a Quicksand empastava.

   As duas sao variaveis (um arquivo cobre 400 a 800), sao servidas do proprio
   dominio a partir de core/static/fontes/ e cobrem `latin` + `latin-ext`. O
   navegador so baixa `latin-ext` se a pagina tiver algum caractere de la —
   portugues nao tem, entao na pratica sao dois arquivos, ~81 KB no total.

   ORDEM DE CARREGAMENTO: este arquivo tem de vir DEPOIS do bootstrap e do
   style.css (ver base.html), senao o `font-family` do style.css vence.
   ========================================================================= */

@font-face {
    font-family: 'Archivo';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('../fontes/archivo-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Archivo';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('../fontes/archivo-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('../fontes/inter-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('../fontes/inter-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


:root {
    --fonte-texto: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
    --fonte-titulo: 'Archivo', var(--fonte-texto);
}


/* --- CORPO -------------------------------------------------------------
   1.0625rem (17px) em vez dos 16px do Bootstrap: a Inter tem altura-de-x
   alta e aguenta o texto corrido um ponto maior sem parecer grande, e o
   site tem muito paragrafo de explicacao de produto.
   `text-wrap: pretty` evita a linha final com uma palavra sozinha.        */
body {
    font-family: var(--fonte-texto);
    font-size: 1.0625rem;
    line-height: 1.65;
    font-synthesis-weight: none;   /* nunca simular negrito: a variavel ja tem */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
p, li {
    text-wrap: pretty;
}


/* --- TITULOS -----------------------------------------------------------
   Archivo 700, entrelinha curta e espacamento levemente fechado — quanto
   maior o corpo, mais o espaco entre letras aparece, e fecha-lo e o que
   faz o titulo "assentar" em vez de esparramar.

   So h1, h2 e h3 ganham tamanho fluido. h5 e h6 ficam como estao de
   proposito: sao 2.186 ocorrencias no site, usadas como titulo de cartao e
   nao como titulo de secao, e mexer no tamanho delas mudaria a altura de
   praticamente todos os grids.                                            */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--fonte-titulo);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.015em;
    text-wrap: balance;
}
h1, .h1 { font-size: clamp(1.9rem, 1.35rem + 2.1vw, 2.5rem); }
h2, .h2 { font-size: clamp(1.6rem, 1.25rem + 1.3vw, 2rem); }
h3, .h3 { font-size: clamp(1.35rem, 1.2rem + 0.7vw, 1.75rem); }
h4, .h4 { line-height: 1.25; }
h5, .h5, h6, .h6 {
    line-height: 1.35;
    letter-spacing: -0.005em;   /* em corpo pequeno o fechamento tem de ser menor */
}

.lead {
    font-size: clamp(1.075rem, 1rem + 0.4vw, 1.25rem);
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0;
}


/* --- CAIXA-ALTA --------------------------------------------------------
   585 elementos do site sao `text-uppercase`. Caixa-alta sem espacamento
   extra e o erro tipografico mais comum que existe: as maiusculas foram
   desenhadas para conviver com minusculas, e enfileiradas ficam apertadas.
   O valor aqui e o mesmo respiro do "BALANÇAS & AUTOMAÇÃO" do logo.       */
.text-uppercase {
    font-family: var(--fonte-titulo);
    letter-spacing: 0.06em;
}


/* --- BOTOES ------------------------------------------------------------
   O style.css ja deixa o botao em caixa-alta e negrito; aqui so troca a
   familia e abre o espacamento. 600 em vez de 700: em caixa-alta pequena o
   700 fecha os contra-fornos (o buraco do "A", do "O") e vira mancha.     */
.btn {
    font-family: var(--fonte-titulo);
    font-weight: 600;
    letter-spacing: 0.05em;
}
.btn-sm { letter-spacing: 0.04em; }


/* --- NAVEGACAO ---------------------------------------------------------
   O menu e etiqueta, nao texto corrido: pede a familia dos titulos, corpo
   um pouco menor e peso 500, senao vinte itens em Inter 17px viram parede. */
.navbar .nav-link,
.dropdown-item {
    font-family: var(--fonte-titulo);
    font-size: 0.9375rem;
    font-weight: 500;
    letter-spacing: 0.005em;
}
footer .nav-link {
    font-family: var(--fonte-texto);
    font-size: 0.9375rem;
    letter-spacing: 0;
}


/* --- NUMEROS -----------------------------------------------------------
   Preco, peso, telefone e CNPJ em tabela alinham por coluna; e para isso
   que existem os numerais tabulares. `zero: slashed` desambigua 0 de O nos
   codigos de modelo (DP30, L42, TI200).                                   */
table, .table, .fw-bold, .badge {
    font-variant-numeric: tabular-nums;
}
code, kbd, samp {
    font-feature-settings: 'zero' 1;
}


/* --- ETIQUETA DE SECAO -------------------------------------------------
   A linha curta em caixa-alta que anuncia a secao ("NOSSOS PRODUTOS E
   SERVIÇOS"). Sem uma regra propria ela era so um <p> em negrito.         */
.eyebrow {
    font-family: var(--fonte-titulo);
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}
