/* Audiversidad · capa de accesibilidad común (WCAG 2.2 AA).
   Se carga al final de cada página. Conserva la identidad visual y solo oscurece
   los tonos que no alcanzaban 4.5:1, refuerza el foco y añade las preferencias. */

/* 1. Contenido visible aunque falle JavaScript */
html:not(.av-js) .reveal{opacity:1!important;transform:none!important}

/* 2. Foco visible con contraste suficiente sobre fondos claros y oscuros */
:focus-visible{outline:3px solid #2F3440!important;outline-offset:3px!important;box-shadow:0 0 0 6px #fff!important;border-radius:6px}
.skip-link:focus,.skip:focus,a[href="#main"]:focus{outline:3px solid #2F3440!important}

/* 3. Contraste: variaciones accesibles de la paleta (lavanda, menta, rosa, gris) */
.eyebrow,.hook-eyebrow,.recognition-head>.eyebrow,.conversion-section-head>.eyebrow,.secondary-pages-head>.eyebrow{color:#5C6170}
#price-eyebrow,.organization-cta .eyebrow,#preguntas .eyebrow,.audience-index,.tc-pink>.tool-label{color:#8A4A6B}
.demo-intro>.eyebrow,#habilidades .eyebrow,.story-player-head>.eyebrow,.tc-lav>.tool-label,.story-beats span,.story-link-grid a b,.ob-label,.difference-section .eyebrow,.difference-num{color:#5F548F}
.tc-mint>.tool-label,.privacy-mark,.reverse .audience-index{color:#2C6A67}
#organizaciones .audience-index{color:#8A4A6B}
.personalization-note>span,.tool-use{color:#565D69}
.episode-label{color:#84506D}
.story-number{color:#5F6477}
footer h4,.footer h4,.site-footer h4,footer .footer-col h4{color:#5F548F!important}
.publisher,.publisher-note,.label,.secondary-network-label,footer a[target="_blank"]{color:#5C6170!important;opacity:1!important}
.shared-grid article>span{color:#5F548F}

/* 4. Preferencias de lectura (se activan desde /accesibilidad#ajustes) */
html.av-texto-grande{font-size:118.75%}
html.av-texto-muy-grande{font-size:137.5%}
html.av-texto-grande body,html.av-texto-muy-grande body{overflow-wrap:anywhere}
html.av-contraste :is(p,li,span,small,dd,dt,td,th,label,summary,figcaption,blockquote,em,h1,h2,h3,h4,.eyebrow,.lead):not(.btn):not(.btn *):not(.price-annual):not(.combo-section *):not(.story-takeaway *):not(.not-library *):not(.skip):not(.skip-link){color:#0E1420!important;opacity:1!important}
html.av-contraste :is(.combo-section,.story-takeaway,.not-library,.price-annual){background:#0E1420!important;background-image:none!important}
html.av-contraste :is(.combo-section,.story-takeaway,.not-library) :is(p,li,span,small,strong,em,h1,h2,h3,h4,a,.eyebrow,.headline,div),html.av-contraste .price-annual{color:#fff!important;opacity:1!important}
html.av-contraste a:not(.btn):not(.combo-section a):not(.story-takeaway a):not(.not-library a){color:#0E1420!important;text-decoration:underline!important;text-underline-offset:3px}
html.av-contraste :is(button,.btn,input,textarea,select,.ob-option,details,.plan,article){border-color:#2F3440!important}
html.av-contraste .ob-option,html.av-contraste .btn-secondary{border-width:2px!important}
html.av-sin-movimiento *,html.av-sin-movimiento *::before,html.av-sin-movimiento *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.av-sin-movimiento .reveal{opacity:1!important;transform:none!important}
html.av-simple .freq-divider,html.av-simple [class*="divider"][aria-hidden="true"],html.av-simple img[alt=""]:not(.brand img):not(header img):not(nav img){display:none!important}
html.av-simple body{line-height:1.7;letter-spacing:.01em}
html.av-simple p,html.av-simple li{max-width:70ch}

/* 5. Panel de ajustes */
.av-ajustes fieldset{border:1px solid rgba(23,40,65,.25);border-radius:14px;padding:1rem 1.2rem;margin:0 0 1rem}
.av-ajustes legend{font-weight:700;padding:0 .3rem}
.av-ajustes label{display:flex;gap:.6rem;align-items:center;min-height:44px;cursor:pointer}
.av-ajustes input{width:22px;height:22px;flex:none;accent-color:#2F3440}
.av-ajustes .av-ajustes-acciones{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.av-ajustes button{min-height:44px;padding:.6rem 1.1rem;border-radius:999px;border:2px solid #2F3440;background:#fff;color:#2F3440;font:inherit;font-weight:700;cursor:pointer}
.av-pref-link{display:inline-block;margin-top:.4rem}

/* 6. Objetivos táctiles mínimos (2.5.8) */
nav a,footer a,.text-btn,summary{min-height:24px}

@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}}

/* 7. Botón principal: texto blanco siempre (en el menú de las páginas informativas,
      en /gracias y en la 404 heredaba un gris o el mismo azul del fondo). */
.btn-primary,.btn-primary:visited,.btn-primary:hover,.btn-primary *{color:#fff!important}
#modelo .find-list+p{margin-top:1.2rem}
