/* Base: reset, tipografia, foco e acessibilidade. */

*{box-sizing:border-box}
html,body{margin:0}
[hidden]{display:none !important}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.45;display:flex;min-height:100vh;min-height:100dvh}
h1,h2,h3{margin:0}
button,input,select,textarea{font-family:inherit}
a{color:var(--sinal-txt)}
img{max-width:100%}
:focus-visible{outline:2px solid var(--sinal);outline-offset:2px}

/* Atalho para pular o menu (leitor de tela e teclado). */
.skip-link{position:fixed;left:12px;top:-48px;z-index:200;background:var(--inv-bg);color:var(--inv-ink);padding:8px 14px;border-radius:var(--r-sm);font-weight:600;font-size:13px;text-decoration:none;transition:top .15s}
.skip-link:focus{top:12px}

/* Texto só para leitor de tela. */
.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}

.num{font-variant-numeric:tabular-nums}

@media (prefers-reduced-motion:reduce){ *{transition:none !important;animation:none !important;scroll-behavior:auto !important} }
