.a11y-widget{position:fixed;left:20px;bottom:20px;z-index:400;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.a11y-toggle{width:52px;height:52px;border-radius:50%;background:var(--navy);color:#fff;border:none;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 30px #20254a40;transition:.2s}
.a11y-toggle:hover{background:var(--orange-text)}
.a11y-toggle svg{width:26px;height:26px}

.a11y-panel{position:absolute;left:0;bottom:64px;width:270px;background:var(--surface);border-radius:18px;box-shadow:0 20px 50px var(--card-shadow);border:1px solid var(--border);padding:18px}
.a11y-panel[hidden]{display:none}
.a11y-panel-title{font-size:1rem;font-weight:900;color:var(--text);margin:0 0 14px}

.a11y-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.a11y-row span{font-size:.86rem;font-weight:700;color:var(--text)}
.a11y-btn-group{display:flex;gap:5px}
.a11y-btn-group button{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:800;font-size:.8rem;cursor:pointer}
.a11y-btn-group button:hover{background:var(--surface-alt)}

.a11y-option{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:10px 12px;margin-bottom:8px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.86rem;font-weight:700;cursor:pointer}
.a11y-option:hover{background:var(--surface-alt)}
.a11y-option[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.a11y-option .dot{width:9px;height:9px;border-radius:50%;background:var(--border)}
.a11y-option[aria-pressed="true"] .dot{background:#7CFFB2}

.a11y-voice-row{flex-direction:column;align-items:stretch;gap:6px;margin-top:-2px}
.a11y-voice-row label{font-size:.86rem;font-weight:700;color:var(--text)}
.a11y-voice-row select{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.82rem;font-family:inherit}

.a11y-reset{width:100%;padding:10px 12px;border-radius:10px;border:1px dashed var(--border);background:none;color:var(--orange-text);font-weight:800;font-size:.82rem;cursor:pointer;margin-top:2px}
.a11y-reset:hover{background:var(--surface-alt)}

@media(max-width:600px){.a11y-widget{left:14px;bottom:14px}.a11y-panel{width:calc(100vw - 48px);max-width:280px}}

/* ---------- Alto contraste ---------- */
html.a11y-contrast body{background:#000!important;color:#fff!important}
html.a11y-contrast .container{color:#fff}
html.a11y-contrast nav{background:#000!important;border-bottom:2px solid #fff!important}
html.a11y-contrast .links a,html.a11y-contrast .brand{color:#fff!important}
html.a11y-contrast .menu{color:#fff!important}

html.a11y-contrast .hero,html.a11y-contrast .dark,html.a11y-contrast .bespoke,html.a11y-contrast .scale,
html.a11y-contrast .tech,html.a11y-contrast .cases,html.a11y-contrast .section,html.a11y-contrast .final,
html.a11y-contrast .footer,html.a11y-contrast .doc-header,html.a11y-contrast .clients,html.a11y-contrast main,
html.a11y-contrast .blog-hero{
  background:#000!important;color:#fff!important;border-color:#fff!important
}
html.a11y-contrast .lead,html.a11y-contrast p,html.a11y-contrast li,html.a11y-contrast span,
html.a11y-contrast h1,html.a11y-contrast h2,html.a11y-contrast h3,html.a11y-contrast strong,
html.a11y-contrast td,html.a11y-contrast .stat span,html.a11y-contrast .doc-section p{color:#fff!important}
html.a11y-contrast .eyebrow,html.a11y-contrast .spell,html.a11y-contrast .mvv h3{color:#FFD84D!important}
html.a11y-contrast a{color:#7FD1FF!important}
html.a11y-contrast a:hover,html.a11y-contrast .links a:hover{color:#FFD84D!important}
html.a11y-contrast .lang-toggle{background:#000!important;color:#fff!important;border:1px solid #fff!important}
html.a11y-contrast .lang-menu{background:#000!important;border:1px solid #fff!important}
html.a11y-contrast .lang-menu a{color:#fff!important}
html.a11y-contrast .lang-menu a.active,html.a11y-contrast .lang-menu a:hover{color:#FFD84D!important;background:#111!important}

html.a11y-contrast .tailor,html.a11y-contrast .pillar,html.a11y-contrast .magic,html.a11y-contrast .service,
html.a11y-contrast .benefit,html.a11y-contrast .mvv article,html.a11y-contrast .quickfacts,
html.a11y-contrast .dpo-card,html.a11y-contrast .callout,html.a11y-contrast .doc-index-mobile,
html.a11y-contrast .table-wrap,html.a11y-contrast section.doc-section,
html.a11y-contrast .post-card,html.a11y-contrast .entry-content blockquote{
  background:#000!important;border:1px solid #fff!important;color:#fff!important
}
html.a11y-contrast .ico{background:#000!important;border:1px solid #fff}

html.a11y-contrast .btn.primary{background:#FFD84D!important;color:#000!important;border:2px solid #FFD84D!important}
html.a11y-contrast .btn.secondary{background:#000!important;color:#fff!important;border:2px solid #fff!important}
html.a11y-contrast .a11y-voice-row select,
html.a11y-contrast .comment-form input,html.a11y-contrast .comment-form textarea{background:#000!important;color:#fff!important;border:1px solid #fff!important}
html.a11y-contrast .faq-item{background:#000!important;border:1px solid #fff!important}
html.a11y-contrast .faq-item summary{color:#fff!important}
html.a11y-contrast .faq-item summary::after{color:#FFD84D!important}
html.a11y-contrast .social-links a{background:#000!important;border:1px solid #fff!important;color:#fff!important}
html.a11y-contrast .social-links a:hover{background:#FFD84D!important;color:#000!important}

html.a11y-contrast img,html.a11y-contrast svg{filter:grayscale(1) contrast(1.15)}
html.a11y-contrast .clients-track{-webkit-mask-image:none;mask-image:none}
html.a11y-contrast .clients-rail img{filter:grayscale(1) invert(1) contrast(1.1);opacity:1}
html.a11y-contrast .doc-tag,html.a11y-contrast .brand-tag{border-color:#fff!important;color:#fff!important;background:#000!important}
html.a11y-contrast thead th{background:#000!important;color:#FFD84D!important;border-bottom:2px solid #fff!important}
html.a11y-contrast tbody tr:nth-child(even){background:#111!important}

/* ---------- Destacar links ---------- */
html.a11y-underline a{text-decoration:underline!important;text-underline-offset:3px}
