*, *::before, *::after { box-sizing: border-box; }
html { color-scheme: dark; scroll-behavior: smooth; scroll-padding-top: var(--menu-h); -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--breu); color: var(--osso);
  font-family: var(--fonte-texto); font-weight: 400; font-size: var(--t-corpo); line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}
img, picture, video, svg { display: block; max-width: 100%; }
a { color: inherit; }
h1, h2, h3, p, ul, ol { margin: 0; }
ul, ol { padding: 0; list-style: none; }
button { font: inherit; color: inherit; }

h1, h2, h3 { font-family: var(--fonte-titulo); font-weight: 500; color: var(--osso-forte); }
h2 { font-size: var(--t-h2); line-height: 1.2; }

:focus-visible { outline: 2px solid var(--ouro); outline-offset: 3px; }

.wrap { width: min(var(--coluna), 100% - 2 * var(--margem)); margin-inline: auto; }
.secao { padding-block: var(--respiro); }
.secao--chumbo { background: var(--chumbo); }

.rotulo {
  display: block; font-size: var(--t-rotulo); font-weight: 600; text-transform: uppercase;
  letter-spacing: .32em; color: var(--ouro); line-height: 1.5;
}
.filete { display: block; width: 40px; height: 3px; background: var(--ouro); border-radius: 2px; }
.ouro { color: var(--ouro); }
.texto-2 { color: var(--texto-2); }

.so-leitor {
  position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}
.pular {
  position: fixed; left: 12px; top: -80px; z-index: 100; background: var(--ouro); color: var(--breu);
  padding: 10px 16px; border-radius: 8px; font-weight: 600; text-decoration: none;
}
.pular:focus { top: 12px; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}
