/* ===== Panel de accesibilidad (BrainWorks) ===== */
.a11y-button{position:fixed;left:16px;bottom:calc(16px + var(--cookie-bar-h, 0px));z-index:1003;width:52px;height:52px;padding:0;margin:0;border:2px solid #fff;border-radius:50%;transition:bottom .3s ease;background:#2b7f27;color:#fff;font-size:26px;line-height:48px;text-align:center;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.a11y-button:hover,.a11y-button:focus-visible{background:#1f5e1c;color:#fff}
.a11y-button:focus-visible{outline:3px solid #ffbf47;outline-offset:2px}
.a11y-panel{position:fixed;left:16px;bottom:calc(80px + var(--cookie-bar-h, 0px));z-index:1004;width:300px;max-width:calc(100vw - 72px);max-height:calc(100vh - 100px - var(--cookie-bar-h, 0px));overflow:auto;background:#fff;color:#222;border-radius:8px;box-shadow:0 6px 24px rgba(0,0,0,.35);padding:16px;font-family:'Roboto',Arial,sans-serif;font-size:15px;line-height:1.4;text-align:left}
.a11y-panel[hidden]{display:none}
.a11y-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.a11y-panel h2{font-size:20px;line-height:1.2;margin:0;color:#222}
.a11y-panel button{font-family:inherit;text-transform:none;letter-spacing:normal;font-weight:500;cursor:pointer}
.a11y-panel .a11y-close{width:44px;height:44px;padding:0;border:0;border-radius:4px;background:transparent;color:#222;font-size:28px;line-height:44px}
.a11y-panel .a11y-close:hover{background:#eee;color:#222}
.a11y-size{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.a11y-size-label{flex:1 1 100%;font-weight:500}
.a11y-size button{min-width:56px;height:44px;padding:0 10px;border:2px solid #2b7f27;border-radius:4px;background:#fff;color:#2b7f27;font-size:17px}
.a11y-size button:hover{background:#eef6ee;color:#2b7f27}
.a11y-size button[disabled]{opacity:.45;cursor:not-allowed}
.a11y-size-value{min-width:60px;text-align:center;font-weight:500}
.a11y-options{display:grid;grid-template-columns:1fr;gap:8px}
.a11y-options button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 12px;border:2px solid #c3d9c1;border-radius:4px;background:#fff;color:#222;font-size:15px;line-height:1.3;text-align:left}
.a11y-options button .fa{width:20px;text-align:center;color:#2b7f27}
.a11y-options button:hover{background:#eef6ee;color:#222}
.a11y-options button[aria-pressed="true"]{background:#2b7f27;border-color:#2b7f27;color:#fff}
.a11y-options button[aria-pressed="true"] .fa{color:#fff}
.a11y-options button[aria-pressed="true"]::after{content:"\2713";margin-left:auto;font-weight:700}
.a11y-panel .a11y-reset{width:100%;min-height:44px;margin-top:12px;padding:8px 12px;border:2px solid #555;border-radius:4px;background:#fff;color:#222}
.a11y-panel .a11y-reset:hover{background:#f1f1f1;color:#222}
.a11y-note{margin:10px 0 0;font-size:13px;color:#555}
.a11y-panel button:focus-visible{outline:3px solid #1a1a1a;outline-offset:2px}
@media (max-width:480px){.a11y-panel{left:8px;right:8px;width:auto;max-width:none}}

/* --- Tamaño del texto (1.4.4) --- */
.a11y-size-1 #content,.a11y-size-1 .site-footer{zoom:1.15}
.a11y-size-2 #content,.a11y-size-2 .site-footer{zoom:1.3}
.a11y-size-3 #content,.a11y-size-3 .site-footer{zoom:1.5}
.a11y-size-4 #content,.a11y-size-4 .site-footer{zoom:1.75}
.a11y-size-5 #content,.a11y-size-5 .site-footer{zoom:2}
.a11y-size-1 #content .container,.a11y-size-1 .site-footer .container{width:auto;max-width:calc(100vw / 1.15 - 16px)}
.a11y-size-2 #content .container,.a11y-size-2 .site-footer .container{width:auto;max-width:calc(100vw / 1.3 - 16px)}
.a11y-size-3 #content .container,.a11y-size-3 .site-footer .container{width:auto;max-width:calc(100vw / 1.5 - 16px)}
.a11y-size-4 #content .container,.a11y-size-4 .site-footer .container{width:auto;max-width:calc(100vw / 1.75 - 16px)}
.a11y-size-5 #content .container,.a11y-size-5 .site-footer .container{width:auto;max-width:calc(100vw / 2 - 16px)}
[class*="a11y-size-"] .gallery-item{width:50%}
[class*="a11y-size-"] #content img{max-width:100%;height:auto}

/* --- Resaltar enlaces (1.4.1) --- */
.a11y-links a{text-decoration:underline!important;text-underline-offset:3px;text-decoration-thickness:2px}
.a11y-links #content a,.a11y-links .site-footer a{background:#fff59d!important;color:#000!important;outline:2px solid #000;outline-offset:1px}
.a11y-links #content a.roll-button{background:#000!important;color:#fff!important}

/* --- Texto legible y espaciado (1.4.12) --- */
.a11y-readable body,.a11y-readable body *:not(.fa):not(.btn-menu):not(.btn-submenu){font-family:Verdana,Tahoma,'Segoe UI',Arial,sans-serif!important}
.a11y-readable #content p,.a11y-readable #content li,.a11y-readable #content td,.a11y-readable .site-footer{line-height:1.6!important;letter-spacing:.12em!important;word-spacing:.16em!important}
.a11y-readable #content p{margin-bottom:2em!important}
.a11y-readable #content{text-align:left!important}

/* --- Detener animaciones (2.2.2 / 2.3.3) --- */
.a11y-noanim *,.a11y-noanim *::before,.a11y-noanim *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}

/* --- Cursor grande --- */
.a11y-cursor,.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24'%3E%3Cpath d='M4 2l14 10-6 1 4 8-3 1-4-8-5 4z' fill='%23000' stroke='%23fff' stroke-width='1.5'/%3E%3C/svg%3E") 4 2,auto!important}

/* --- Escala de grises --- */
.a11y-gray body>*:not(.a11y-panel):not(.a11y-button){filter:grayscale(1)}

/* --- Alto contraste (1.4.6 / 1.4.11) --- */
.a11y-contrast #page *:not(img):not(.roll-button):not(.go-top):not(.slider-toggle):not(.slide-item):not(.slide-inner):not(.slides-control){background-color:transparent!important}
.a11y-contrast body,.a11y-contrast #page,.a11y-contrast .site-header,.a11y-contrast .site-header.float-header,.a11y-contrast .page-wrap,.a11y-contrast .site-footer,.a11y-contrast #mainnav-mobi,.a11y-contrast #mainnav-mobi ul li,.a11y-contrast #mainnav ul ul a,.a11y-contrast .header-image,.a11y-contrast .overlay{background:#000!important;color:#fff!important}
.a11y-contrast body *:not(.a11y-panel):not(.a11y-panel *):not(.a11y-button):not(.a11y-button *):not(img):not(.roll-button):not(.go-top):not(.go-top *):not(.slider-toggle):not(.slider-toggle *):not(.gdpr-cookie-notice *):not(.gdpr-cookie-notice-modal *){color:#fff!important;border-color:#fff!important;text-shadow:none!important}
.a11y-contrast a:not(.roll-button):not(.a11y-panel *),.a11y-contrast #mainnav ul li a,.a11y-contrast .lang-switch a,.a11y-contrast .lang-switch-mobile a{color:#ffeb3b!important;text-decoration:underline!important}
.a11y-contrast .roll-button,.a11y-contrast .go-top,.a11y-contrast .slider-toggle{background:#ffeb3b!important;color:#000!important;border:2px solid #000!important}
.a11y-contrast .slider-toggle .fa,.a11y-contrast .go-top .fa{color:#000!important}
.a11y-contrast .slide-inner{background:rgba(0,0,0,.8)}
.a11y-contrast .gallery-item img,.a11y-contrast .site-logo{background:#fff;padding:6px;border-radius:4px}
.a11y-contrast .entry-content th{background:#222!important}
.a11y-contrast .btn-menu{color:#fff!important}
.a11y-contrast .preloader{display:none!important}
