/* Accessibility toolbar and modes. Loaded on every page. */
.skip-link{position:absolute;top:-100px;right:16px;z-index:1000;background:#141414;color:#fff;padding:12px 18px;font-size:14px;font-weight:700;border:2px solid #b99b71;transition:top .15s}
.skip-link:focus{top:12px;outline:3px solid #b99b71;outline-offset:2px}
.a11y-fab{position:fixed;right:22px;bottom:22px;z-index:60;width:54px;height:54px;border-radius:50%;border:2px solid #b99b71;background:#141311;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px #0004;cursor:pointer;padding:0}
.a11y-fab svg{width:30px;height:30px;fill:currentColor;stroke:none}
.a11y-fab:hover{background:#2a2622}
.a11y-fab:focus-visible{outline:3px solid #b99b71;outline-offset:4px}
.a11y-panel{position:fixed;right:22px;bottom:88px;z-index:61;width:min(330px,calc(100vw - 32px));max-height:calc(100dvh - 110px);overflow:auto;background:#faf9f6;color:#141414;border:1px solid #ddd9d1;box-shadow:0 18px 60px #0005;font-family:Heebo,Arial,sans-serif;font-size:14px;line-height:1.5;direction:rtl;text-align:right;border-radius:4px}
.a11y-panel[hidden]{display:none}
.a11y-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid #ddd9d1;background:#141311;color:#fff}
.a11y-head h2{margin:0;font-size:16px;font-weight:700;letter-spacing:0}
.a11y-head span{font-size:11px;color:#c9bfae;display:block;font-weight:400;margin-top:2px}
.a11y-close{background:none;border:1px solid #6b6258;color:#fff;width:34px;height:34px;font-size:20px;line-height:1;border-radius:50%;cursor:pointer}
.a11y-close:focus-visible{outline:3px solid #b99b71;outline-offset:2px}
.a11y-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}
.a11y-opt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:78px;padding:10px 6px;background:#fff;border:1px solid #ddd9d1;color:#141414;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;border-radius:3px;text-align:center}
.a11y-opt svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.a11y-opt:hover{border-color:#141414}
.a11y-opt[aria-pressed="true"]{background:#141311;color:#fff;border-color:#141311}
.a11y-opt:focus-visible{outline:3px solid #b99b71;outline-offset:2px}
.a11y-row{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid #ddd9d1;padding:8px 10px;border-radius:3px}
.a11y-row b{font-size:12.5px;font-weight:600}
.a11y-row .a11y-steps{display:flex;align-items:center;gap:6px}
.a11y-row button{width:36px;height:36px;border:1px solid #ddd9d1;background:#faf9f6;font:inherit;font-size:18px;font-weight:700;cursor:pointer;border-radius:3px}
.a11y-row button:focus-visible{outline:3px solid #b99b71;outline-offset:2px}
.a11y-row output{min-width:38px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}
.a11y-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px 14px;border-top:1px solid #ddd9d1;font-size:12px}
.a11y-foot a{color:#141414;text-decoration:underline;text-underline-offset:3px}
.a11y-foot button{background:none;border:0;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;color:#141414;padding:0}
.a11y-foot a:focus-visible,.a11y-foot button:focus-visible{outline:3px solid #b99b71;outline-offset:3px}
.a11y-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:680px){.a11y-fab{right:14px;bottom:14px;width:48px;height:48px}.a11y-panel{right:14px;bottom:72px}}

/* ---------- modes (class on <html>) ---------- */
/* text size: zoom steps on body, like browser zoom */
html.a11y-z1 body{zoom:1.1}
html.a11y-z2 body{zoom:1.22}
html.a11y-z3 body{zoom:1.36}
html.a11y-z4 body{zoom:1.5}
html.a11y-z1 .a11y-fab,html.a11y-z1 .a11y-panel{zoom:.909}
html.a11y-z2 .a11y-fab,html.a11y-z2 .a11y-panel{zoom:.82}
html.a11y-z3 .a11y-fab,html.a11y-z3 .a11y-panel{zoom:.735}
html.a11y-z4 .a11y-fab,html.a11y-z4 .a11y-panel{zoom:.667}

/* stop motion */
html.a11y-stop *,html.a11y-stop *::before,html.a11y-stop *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-stop{scroll-behavior:auto}
html.a11y-stop .cc-manifesto .w{color:var(--ink,#141414)}
html.a11y-stop .keys-photo img{height:100%}
html.a11y-stop .kb-card.in>*{animation:none}
html.a11y-stop .tick-track{transform:none!important}

/* dark contrast: light text on black */
html.a11y-dark body,html.a11y-dark body *:not(img):not(video):not(svg):not(svg *):not(.a11y-panel):not(.a11y-panel *):not(.a11y-fab):not(.a11y-fab *){background-color:#000!important;background-image:none!important;color:#ffe9a8!important;border-color:#ffe9a8!important;box-shadow:none!important;text-shadow:none!important}
html.a11y-dark a:not(.a11y-panel a),html.a11y-dark button:not(.a11y-panel button):not(.a11y-fab){color:#fff!important;text-decoration:underline}
html.a11y-dark svg{color:#ffe9a8}
html.a11y-dark img,html.a11y-dark video{mix-blend-mode:normal!important;opacity:1!important}
/* light contrast: black on white */
html.a11y-light body,html.a11y-light body *:not(img):not(video):not(svg):not(svg *):not(.a11y-panel):not(.a11y-panel *):not(.a11y-fab):not(.a11y-fab *){background-color:#fff!important;background-image:none!important;color:#000!important;border-color:#000!important;box-shadow:none!important;text-shadow:none!important}
html.a11y-light a:not(.a11y-panel a),html.a11y-light button:not(.a11y-panel button):not(.a11y-fab){color:#000!important;text-decoration:underline}
html.a11y-light img,html.a11y-light video{mix-blend-mode:normal!important;opacity:1!important}
/* grayscale */
html.a11y-gray{filter:grayscale(1)}
/* invert (for light sensitivity) */
html.a11y-invert{filter:invert(1) hue-rotate(180deg);background:#000}
html.a11y-invert img,html.a11y-invert video{filter:invert(1) hue-rotate(180deg)}
html.a11y-invert.a11y-gray{filter:invert(1) hue-rotate(180deg) grayscale(1)}

/* links and headings */
html.a11y-links a{text-decoration:underline!important;text-underline-offset:3px;text-decoration-thickness:2px;outline:2px solid #ffb400!important;outline-offset:2px;background:#fff3bf!important;color:#000!important}
html.a11y-heads h1,html.a11y-heads h2,html.a11y-heads h3,html.a11y-heads h4{outline:3px dashed #ffb400!important;outline-offset:4px;background:#fff3bf!important;color:#000!important}
html.a11y-heads h1 *,html.a11y-heads h2 *,html.a11y-heads h3 *{color:#000!important}

/* readable font and spacing */
html.a11y-font body,html.a11y-font body *:not(svg):not(svg *){font-family:Arial,Helvetica,sans-serif!important;letter-spacing:0!important;font-style:normal!important}
html.a11y-space body{line-height:2!important;letter-spacing:.06em!important;word-spacing:.18em!important}
html.a11y-space p,html.a11y-space li,html.a11y-space dd,html.a11y-space summary,html.a11y-space h1,html.a11y-space h2,html.a11y-space h3{line-height:2!important;letter-spacing:.06em!important;word-spacing:.18em!important;margin-bottom:1em}

/* keyboard focus made loud */
html.a11y-focus *:focus{outline:4px solid #ff7a00!important;outline-offset:3px!important;box-shadow:0 0 0 8px #ffffffaa!important}

/* big cursor */
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'><path d='M6 4 L6 40 L15 31 L21 44 L27 41 L21 29 L34 29 Z' fill='%23000' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/></svg>") 6 4,auto!important}
html.a11y-cursor a,html.a11y-cursor button,html.a11y-cursor [role="button"],html.a11y-cursor summary,html.a11y-cursor label,html.a11y-cursor select,html.a11y-cursor a *,html.a11y-cursor button *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'><path d='M17 4 C14 4 13 6 13 8 L13 24 L10 21 C8 19 4 20 4 24 L10 36 C12 40 15 44 22 44 L28 44 C34 44 38 40 38 34 L38 20 C38 17 35 16 33 17 C33 14 30 13 28 14 C28 11 25 10 23 11 L23 8 C23 6 20 4 17 4 Z' fill='%23000' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/></svg>") 14 4,pointer!important}

/* image descriptions as visible captions */
html.a11y-alt img[alt]:not([alt=""]){outline:2px solid #ffb400}
.a11y-caption{display:block;font-size:12px;background:#fff3bf;color:#000;padding:4px 8px;border:1px solid #ffb400;margin-top:4px;line-height:1.4}

/* privacy notice */
.cc-notice{position:fixed;left:16px;right:16px;bottom:16px;z-index:58;margin:0 auto;max-width:720px;background:#141311;color:#eee9e1;border:1px solid #3a342d;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px;line-height:1.6;box-shadow:0 12px 40px #0006;border-radius:4px;direction:rtl}
.cc-notice[hidden]{display:none}
.cc-notice p{margin:0}
.cc-notice a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.cc-notice button{flex:none;background:#faf9f6;color:#141414;border:0;padding:10px 18px;font:inherit;font-weight:700;font-size:13px;cursor:pointer;border-radius:3px}
.cc-notice button:focus-visible{outline:3px solid #b99b71;outline-offset:3px}
@media(max-width:900px){.cc-notice{left:10px;right:10px;bottom:auto;top:74px;flex-direction:column;align-items:stretch;font-size:12px;padding:12px 14px}.cc-notice button{width:100%}}

/* the toolbar keeps its own look in every mode */
html.a11y-dark .a11y-fab,html.a11y-light .a11y-fab,html.a11y-links .a11y-fab{background:#141311!important;color:#fff!important;border-color:#b99b71!important;outline:none}
html.a11y-dark .a11y-panel,html.a11y-light .a11y-panel{background:#faf9f6!important;color:#141414!important}
html.a11y-dark .a11y-head,html.a11y-light .a11y-head{background:#141311!important;color:#fff!important}
html.a11y-dark .a11y-head *,html.a11y-light .a11y-head *{color:#fff!important;background:transparent!important}
html.a11y-dark .a11y-opt,html.a11y-light .a11y-opt,html.a11y-dark .a11y-row,html.a11y-light .a11y-row,html.a11y-dark .a11y-row button,html.a11y-light .a11y-row button{background:#fff!important;color:#141414!important;border-color:#ddd9d1!important}
html.a11y-dark .a11y-opt[aria-pressed="true"],html.a11y-light .a11y-opt[aria-pressed="true"]{background:#141311!important;color:#fff!important}
html.a11y-dark .a11y-opt[aria-pressed="true"] *,html.a11y-light .a11y-opt[aria-pressed="true"] *{color:#fff!important}
html.a11y-dark .a11y-foot *,html.a11y-light .a11y-foot *{color:#141414!important;background:transparent!important}
html.a11y-links .a11y-panel a,html.a11y-links .cc-notice a{outline:none!important;background:transparent!important;color:inherit!important}
html.a11y-font .a11y-panel,html.a11y-font .a11y-panel *{font-family:Arial,Helvetica,sans-serif!important}
html.a11y-dark .a11y-panel svg,html.a11y-dark .a11y-fab svg{color:inherit}
