/* Accessibility widget - self-contained (new site) */
.a11y-fab{position:fixed;inset-inline-start:18px;bottom:148px;z-index:61;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:#0C3F51;border:1px solid rgba(12,63,81,.1);box-shadow:0 8px 28px rgba(12,63,81,.18);cursor:pointer;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .25s,color .25s}
.a11y-fab:hover{background:#0C3F51;color:#fff;transform:scale(1.08)}
.a11y-fab svg{width:24px;height:24px}
.a11y-panel{position:fixed;inset-inline-start:18px;bottom:210px;z-index:62;width:min(300px,calc(100vw - 36px));background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(12,63,81,.1);border-radius:28px;box-shadow:0 28px 80px rgba(12,63,81,.18);padding:22px;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s,transform .3s,visibility .3s}
.a11y-panel.open{opacity:1;visibility:visible;transform:none}
.a11y-panel h3{font-size:18px;color:#0C3F51;margin-bottom:4px}
.a11y-panel p{font-size:13px;color:#666;margin-bottom:14px}
.a11y-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.a11y-btn{min-height:44px;padding:11px 12px;font-family:inherit;font-size:13px;color:#0C3F51;background:rgba(12,63,81,.06);border:1px solid rgba(12,63,81,.1);border-radius:14px;cursor:pointer;transition:background .2s,color .2s}
.a11y-btn:hover{background:rgba(12,63,81,.12)}
.a11y-btn.active{background:#0C3F51;color:#fff}
.a11y-close{width:100%;background:none;border:1px solid rgba(12,63,81,.18);color:#0C3F51;border-radius:14px;min-height:42px;cursor:pointer;font-family:inherit;font-size:14px}
.a11y-statement{display:block;text-align:center;margin-top:10px;font-size:12px;color:#666;text-decoration:underline}
/* applied modes */
body.acc-readable{font-family:Arial,sans-serif!important}
body.acc-gray{filter:grayscale(1)}
body.acc-high-contrast{background:#fff!important;color:#000!important}
body.acc-high-contrast *{background-image:none!important;box-shadow:none!important}
body.acc-high-contrast a,body.acc-high-contrast button{color:#000!important;border-color:#000!important}
body.acc-underline a{text-decoration:underline!important}
body.acc-stop *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:520px){.a11y-fab{bottom:142px}.a11y-panel{bottom:204px}}
