/* QA 2E: keyboard access, readable content and compact mobile navigation. */
[hidden] { display: none !important; }
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid #1261a0;
  outline-offset: 3px;
}
.public-header .public-nav-account { display: none; }

main :where(img, video) { max-width: 100%; }
.site-shell :where(input, select, textarea) { min-width: 0; }
.site-shell :where(h1, h2, h3, p, a) { overflow-wrap: anywhere; }
@media(min-width:1181px) {
  .public-header .header-shell { gap: 12px; }
  .public-header .public-brand { min-width: 140px; flex-basis: 140px; margin-right: 0; }
  .public-header .public-nav { gap: 10px; justify-content: flex-start !important; overflow: visible; }
  .public-header .public-nav a { flex-shrink: 0; }
}
@media(max-width:1180px) {
  .public-header__bar { height: 70px; }
  .public-header .nav-toggle { display: grid; place-items: center; margin-left: auto; }
  .public-header .public-nav { position: absolute; left: 14px; right: 14px; top: 72px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 10px; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: var(--shadow-lg); max-height: calc(100dvh - 90px); overflow-y: auto; }
  .public-header .public-nav.is-open { display: flex; }
  .public-header .public-nav a { padding: 12px 13px; font-size: 12px; }
  .public-header .public-nav-account { display: block; }
  .public-header .header-register { display: none; }
  .public-header .public-brand { min-width: 0; flex: 0 0 auto; margin-right: auto; }
}
@media(max-width:640px) {
  .public-header .header-signin, .public-header .header-login { display: none !important; }
  .public-header .header-shell { gap: 6px; }
  .public-header .header-actions { gap: 4px; }
  .public-header .public-brand { margin-right: auto; min-width: 0; }
}
html.inadis-public-reduce-motion .site-motion-reveal,
html.inadis-public-reduce-motion .reveal { opacity: 1 !important; transform: none !important; }
@media(prefers-reduced-motion:reduce) {
  .site-motion-reveal, .reveal { opacity: 1 !important; transform: none !important; }
}

/* QA final · lectura en voz alta pública */
.a11y-voice-note{margin:10px 0 0;color:var(--muted,#5f7482);font-size:.78rem;line-height:1.55;max-width:760px}
.a11y-controls [data-a11y="read"],.a11y-controls [data-a11y="pause"],.a11y-controls [data-a11y="stop"]{font-weight:700}
.high-contrast .a11y-voice-note{color:currentColor}
