body {
    font-family: var(--fonte-base);
    font-size: 1rem;
    line-height: 1.65;
    color: var(--cor-texto);
    background: var(--cor-papel);
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 {
    font-family: var(--fonte-titulo);
    font-weight: 700;
    color: var(--cor-tinta);
    text-wrap: balance;
}

h1 { font-size: clamp(2.6rem, 6.2vw, 5rem); line-height: 0.98; letter-spacing: 0.005em; text-transform: uppercase; }
h2 { font-size: clamp(1.9rem, 3.6vw, 2.9rem); line-height: 1.02; letter-spacing: 0.01em; text-transform: uppercase; margin-bottom: 20px; }
h3 { font-size: clamp(1.3rem, 2vw, 1.6rem); line-height: 1.1; letter-spacing: 0.015em; text-transform: uppercase; }

p + p { margin-top: 1em; }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    outline: 3px solid var(--cor-destaque);
    outline-offset: 3px;
}

.artigo__corpo a, .secao__conteudo p a, .info-corpo a {
    color: var(--cor-tinta);
    text-decoration: underline;
    text-decoration-color: var(--cor-destaque);
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

.sr-only {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

.pular-conteudo {
    position: absolute; left: 16px; top: -100px; z-index: 1000;
    background: var(--cor-tinta); color: var(--cor-branco); padding: 10px 16px;
}
.pular-conteudo:focus { top: 12px; }

/* Rótulos técnicos em monoespaçada, com marcador quadrado de acento */
.eyebrow, .secao__rotulo, .rotulo {
    display: inline-flex; align-items: center; gap: 10px;
    font-family: var(--fonte-mono);
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--cor-tinta-2);
    line-height: 1.4;
}
.eyebrow::before, .secao__rotulo::before { content: ''; width: 9px; height: 9px; background: var(--cor-destaque); flex-shrink: 0; }

.lede { font-size: clamp(1.1rem, 1.5vw, 1.3rem); line-height: 1.55; color: var(--cor-tinta-2); max-width: 52ch; }
