/* Panel dostępności + skórka Klaro w palecie v5 (granat/fala/pill). */

/* ---------- skip-link (WCAG 2.4.1) ---------- */
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--deep);color:#fff;
  font-family:Jost,sans-serif;font-weight:500;padding:12px 22px;border-radius:0 0 14px 0;text-decoration:none}
.skip-link:focus{left:0}

/* ---------- przycisk + panel dostępności ---------- */
.a11y-btn{position:fixed;left:18px;bottom:18px;z-index:120;width:52px;height:52px;border-radius:50%;
  border:0;cursor:pointer;background:var(--deep);color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 26px rgba(35,32,72,.35);transition:transform .15s ease}
.a11y-btn:hover{transform:scale(1.07)}
.a11y-btn:focus-visible{outline:3px solid var(--fala);outline-offset:3px}
.a11y-btn svg{width:28px;height:28px}
@media(max-width:760px){.a11y-btn{bottom:72px}}

.a11y-panel{position:fixed;left:18px;bottom:82px;z-index:121;background:#fff;border:1px solid var(--line);
  border-radius:18px;box-shadow:0 24px 60px rgba(35,32,72,.25);padding:20px;width:min(320px,calc(100vw - 36px));
  max-height:min(70vh,640px);overflow:auto}
@media(max-width:760px){.a11y-panel{bottom:136px}}
.a11y-title{font-family:Jost,sans-serif;font-weight:600;color:var(--deep);font-size:1.05rem;margin-bottom:12px}
.a11y-sub{font-family:Jost,sans-serif;font-weight:500;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:12px 0 8px}
.a11y-tryb small{display:block;font-family:"Source Sans 3",sans-serif;font-weight:400;color:var(--muted);font-size:.82rem;margin-top:2px}
.a11y-opts{display:grid;gap:8px}
.a11y-opt{font:inherit;font-family:Jost,sans-serif;font-weight:500;font-size:.95rem;text-align:left;cursor:pointer;
  padding:10px 14px;border-radius:12px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);
  transition:border-color .12s ease, background .12s ease;position:relative;padding-right:44px}
.a11y-opt::after{content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);
  width:20px;height:20px;border-radius:50%;border:2px solid var(--line);background:#fff}
.a11y-opt[aria-pressed="true"]{border-color:var(--fala);background:var(--wash)}
.a11y-opt[aria-pressed="true"]::after{background:var(--fala);border-color:var(--ink)}
.a11y-opt:focus-visible{outline:3px solid var(--fala);outline-offset:2px}
.a11y-reset{margin-top:12px;font:inherit;font-family:Jost,sans-serif;font-size:.88rem;background:none;border:0;
  color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.a11y-reset:hover{color:var(--deep)}

/* ---------- tryby dostępności (klasy na <html>) ---------- */
html.a11y-fs1{font-size:112.5%}
html.a11y-fs2{font-size:125%}
html.a11y-font body, html.a11y-font h1, html.a11y-font h2, html.a11y-font h3,
html.a11y-font .btn, html.a11y-font .eyebrow{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif !important;letter-spacing:0}
html.a11y-links a{text-decoration:underline !important;text-underline-offset:2px}
html.a11y-noanim *, html.a11y-noanim *::before, html.a11y-noanim *::after{
  animation:none !important;transition:none !important}
html.a11y-noanim .rev{opacity:1 !important;transform:none !important}
html.a11y-hc body{background:#fff;color:#111}
html.a11y-hc :is(.sec-head p,.why-card p,.nfz p,.tl-step p,.hero p.lead,.art .copy p,.ini-copy p,
  .siec-copy p,.kasz-body p,.op figcaption,.edu time,.city .addr,.crumbs,#kiedy p,.duo-card p,.eyebrow){color:#222 !important}
html.a11y-hc :is(h1,h2,h3,h4){color:#000 !important}
html.a11y-hc :is(.topbar,footer,.trust,.credo,.dekl,#pakiety,.final){background:#000 !important}
html.a11y-hc :is(.topbar,footer,.trust,.credo,.dekl,#pakiety,.final) :is(p,a,b,span,h2,h3,h4,li,div){color:#fff !important}
html.a11y-hc a{text-decoration:underline !important}
html.a11y-hc .btn-fala{background:#000;color:#fff;border:2px solid #fff}
html.a11y-hc .btn-ink{background:#000;color:#fff}

/* stłumienie kolorów (tryb epilepsji): zmienne akcentów + zdjęcia w szarości
   (celowo NIE filter na html/body - łamałby position:fixed przycisku panelu) */
html.a11y-desat{--fala:#93a6b0;--gold:#a8a8a8;--wash:#eef1f3;--wash2:#e3e7ea}
html.a11y-desat img{filter:grayscale(.9)}
html.a11y-desat .mega-hero .bg{filter:grayscale(1) brightness(.6)}

/* maska czytania: przyciemnienie nad i pod pasem ~140px wokół kursora */
.a11y-maska-pas{display:none}
html.a11y-maska .a11y-maska-pas{display:block;position:fixed;inset:0;z-index:118;pointer-events:none;
  --y:50vh;
  background:linear-gradient(180deg,rgba(10,10,25,.55) 0,rgba(10,10,25,.55) calc(var(--y) - 80px),
    transparent calc(var(--y) - 70px),transparent calc(var(--y) + 70px),
    rgba(10,10,25,.55) calc(var(--y) + 80px),rgba(10,10,25,.55) 100%)}

/* ---------- Klaro w palecie v5 ---------- */
#bm-klaro .klaro .cookie-notice,#bm-klaro .klaro .cookie-modal .cm-modal{
  background:#fff;color:var(--ink);border-radius:18px;box-shadow:0 24px 60px rgba(35,32,72,.3);
  font-family:"Source Sans 3",system-ui,sans-serif}
#bm-klaro .klaro .cookie-notice{border:1px solid var(--line)}
#bm-klaro .klaro .cn-body p,#bm-klaro .klaro .cm-modal p,#bm-klaro .klaro .cm-modal span,
#bm-klaro .klaro .cm-modal label,#bm-klaro .klaro .cm-modal h1,#bm-klaro .klaro .cm-modal h2{
  color:var(--ink)}
#bm-klaro .klaro .cm-modal .title,#bm-klaro .klaro .cm-modal h1{font-family:Jost,sans-serif;color:var(--deep)}
#bm-klaro .klaro .cn-learn-more,#bm-klaro .klaro a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
#bm-klaro .klaro .cm-btn{font-family:Jost,sans-serif;font-weight:500;border-radius:999px;padding:.7em 1.4em;border:0;cursor:pointer}
#bm-klaro .klaro .cm-btn.cm-btn-success,#bm-klaro .klaro .cm-btn.cm-btn-accept-all{background:var(--fala);color:var(--deep)}
#bm-klaro .klaro .cm-btn.cm-btn-danger,#bm-klaro .klaro .cm-btn.cm-btn-decline{background:transparent;color:var(--ink);border:2px solid var(--line)}
#bm-klaro .klaro .cm-btn.cm-btn-info{background:var(--ink);color:#fff}
#bm-klaro .klaro .cm-list-input:checked + .cm-list-label .slider{background-color:var(--fala)}
#bm-klaro .klaro .cm-list-input.required:checked + .cm-list-label .slider{background-color:var(--ink)}
#bm-klaro .klaro .slider{box-shadow:none}
#bm-klaro .klaro .cm-modal .cm-footer{border-top:1px solid var(--line)}
#bm-klaro .klaro .cm-powered-by{display:none}
