*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--fonte);
  font-size: 15px;
  line-height: 1.5;
  color: var(--texto);
  background: var(--rcm-cinza);
}
h1, h2, h3 { margin: 0; line-height: 1.25; color: var(--rcm-marinho); }
h1 { font-size: 1.5rem; }
h2 { font-size: 1.15rem; }
h3 { font-size: 1rem; }
p { margin: 0 0 .75rem; }
a { color: var(--rcm-azul); }
button { font: inherit; cursor: pointer; }
:focus-visible { outline: 3px solid var(--rcm-azul); outline-offset: 2px; }
.sr-only {
  position: absolute; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap;
}
.carregando { color: var(--texto-suave); padding: 2rem 0; }
.icone { width: 20px; height: 20px; flex: none; }
