/* ===== תפריט נגישות: משותף ל-index, legal ו-404 ===== */
.a11y-btn{
  position:fixed;z-index:95;inset-inline-start:20px;bottom:24px;width:50px;height:50px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  background:var(--primary-dark);color:#fff;border:2px solid #fff;
  box-shadow:0 10px 22px -10px rgba(0,0,0,.5);
}
.a11y-btn svg{width:28px;height:28px;fill:currentColor}
.a11y-btn:focus-visible,.a11y-panel button:focus-visible,.a11y-panel a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.a11y-panel{
  position:fixed;z-index:96;inset-inline-start:20px;bottom:86px;width:min(350px,calc(100vw - 28px));
  max-height:min(78vh,620px);overflow:auto;padding:18px 16px 16px;border-radius:20px;
  background:#FFFDF9;color:#2E332B;border:1px solid #C9D1BC;box-shadow:0 30px 60px -20px rgba(0,0,0,.45);
  font-family:'Heebo',Arial,sans-serif;text-align:start;
}
.a11y-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.a11y-head h2{font-size:19px;font-weight:700;color:#2E332B;margin:0}
.a11y-close{width:44px;height:44px;border-radius:50%;border:1px solid #C9D1BC;background:#fff;color:#2E332B;font-size:24px;line-height:1;cursor:pointer}
.a11y-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.a11y-grid button{
  min-height:48px;padding:8px 10px;border-radius:12px;border:1px solid #C9D1BC;background:#F4F1EA;
  color:#2E332B;font:600 15px/1.25 'Heebo',Arial,sans-serif;cursor:pointer;text-align:center;
}
.a11y-grid button[aria-pressed="true"]{background:#465239;color:#fff;border-color:#465239}
.a11y-reset{width:100%;margin-top:10px;min-height:46px;border-radius:12px;border:1px solid #8F6B2E;background:#fff;color:#6E5020;font:700 15px 'Heebo',Arial,sans-serif;cursor:pointer}
.a11y-foot{margin-top:12px;font-size:14px;color:#4A5045;text-align:center}
.a11y-foot a{color:#465239;text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){
  .a11y-btn{inset-inline-start:14px;bottom:84px;width:46px;height:46px}
  .a11y-panel{inset-inline-start:14px;bottom:140px}
}

/* ===== מצבי הנגישות (מחלקות על html) =====
   filter לא נוגע ב-html וב-body: הוא היה שובר את position:fixed של התפריט עצמו. */
html{--fc:contrast(1);--fg:grayscale(0);--fi:invert(0)}
html.a11y-contrast{--fc:contrast(1.45)}
html.a11y-gray{--fg:grayscale(1)}
html.a11y-invert{--fi:invert(1) hue-rotate(180deg)}
html:is(.a11y-contrast,.a11y-gray,.a11y-invert) :is(main,footer,.topbar,.brand-404,.float-cta,.a11y-btn){filter:var(--fc) var(--fg) var(--fi)}
html.a11y-font-1 :is(main,footer,.topbar,.float-cta){zoom:1.1}
html.a11y-font-2 :is(main,footer,.topbar,.float-cta){zoom:1.2}
html.a11y-font-3 :is(main,footer,.topbar,.float-cta){zoom:1.32}
html.a11y-links a{text-decoration:underline !important;text-underline-offset:3px;outline:2px solid #E0A800;outline-offset:2px}
html.a11y-readable body *:not(svg):not(path){font-family:Arial,'Segoe UI',sans-serif !important;letter-spacing:normal !important}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}
html.a11y-cursor,html.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 2l15 11-7 1 4 8-3 1.5-4-8-5 5z' fill='%23000' stroke='%23fff' stroke-width='1.2'/%3E%3C/svg%3E") 4 2,auto !important}
html.a11y-lines :is(main,footer) :is(p,li,blockquote,span){line-height:2.1 !important;word-spacing:.12em}
html.a11y-heads :is(main,footer) :is(h1,h2,h3){outline:3px dashed #B8955A;outline-offset:6px}
