/* Tokens da identidade DigitalOps (D:/sandbox/motion/src/theme.js, esquema "preto").
   Fontes locais em fontes/ (OFL, de github.com/google/fonts), sem CDN. */
@font-face { font-family: "Oswald"; font-weight: 200 700; font-display: swap; src: url(fontes/Oswald.ttf); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 100 700; font-stretch: 85% 100%; font-display: swap; src: url(fontes/IBMPlexSans.ttf); }
:root {
  --fundo: #0b0c0e;
  --fundo-alto: #131519;
  --tinta: #fbfbfa;
  --tinta-suave: #c2c5cb;
  --sinal: #d6202a;
  --sinal-claro: #ff4d57;
  --linha: #23262c;
  --titulo: "Oswald", "Arial Narrow", system-ui, sans-serif;
  --corpo: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--fundo);
  color: var(--tinta);
  font: 17px/1.65 var(--corpo);
  letter-spacing: .006em;
}
main, header, footer { max-width: 44rem; margin: 0 auto; padding: 0 1rem; }
header { padding-top: 1.5rem; }
header img { height: 40px; width: auto; display: block; }
h1, h2 { font-family: var(--titulo); font-weight: 600; line-height: 1.16; }
h1 { font-size: clamp(2rem, 6vw, 3.25rem); margin: 2.5rem 0 1rem; }
h2 { font-size: 1.5rem; margin: 2.5rem 0 .75rem; }
p, li { color: var(--tinta-suave); }
strong { color: var(--tinta); }
a { color: var(--sinal-claro); }
a:focus-visible { outline: 2px solid var(--sinal-claro); outline-offset: 2px; }
.rotulo {
  font-size: .7rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
  color: var(--tinta-suave); border-left: 3px solid var(--sinal); padding-left: .5rem;
}
.cartao {
  background: var(--fundo-alto); border: 1px solid var(--linha); border-radius: 2px;
  padding: 1rem 1.25rem; margin: 1rem 0;
}
footer { border-top: 1px solid var(--linha); margin-top: 4rem; padding-block: 1.5rem 3rem; font-size: .9rem; }
footer p { margin: .25rem 0; }
