/* ---------- 8 · ACESSIBILIDADE ------------------------------------------- */
:where(a,button,input,select):focus-visible{outline:2px solid var(--vios);outline-offset:3px;
  border-radius:4px;}

/* pular para o conteúdo: primeiro tab da página */
/* --vio dava 4.16:1 com o texto branco; --viod sobe para 5.18:1 */
.skip{position:fixed;left:-9999px;top:0;z-index:300;background:var(--viod);color:#fff;
  font-family:var(--f-mono);font-size:11.5px;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;padding:13px 20px;border-radius:0 0 var(--r1) 0;text-decoration:none;}
.skip:focus{left:0;}

.sronly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip-path:inset(50%);white-space:nowrap;border:0;}

/* movimento desligado: uma classe só, resolvida antes da pintura.
   Não é media query porque a decisão também vem do usuário, não só do SO. */
html.semmov #pre{display:none;}
html.semmov .word{animation:none !important;opacity:1 !important;transform:none !important;}
html.semmov .heromq span,html.semmov .mq,html.semmov #grain,
html.semmov #hero .mark,html.semmov #pre .ptri{animation:none !important;}
html.semmov body,html.semmov a,html.semmov button{cursor:auto !important;}
html.semmov #cur,html.semmov #curring,html.semmov #curtain{display:none;}
html.semmov #menu{transition:none;}
html.semmov .lm > span{transform:none !important;}
html.semmov .mask{clip-path:none !important;}
html.semmov .rv{opacity:1 !important;transform:none !important;}
html.semmov #smooth > section:not(#hero){margin-top:0;border-radius:0;}
