@font-face{font-family:Heebo;src:url('assets/Heebo.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
:root{--font-body:Heebo;--font-heading:Heebo}
html body,body *{font-family:Heebo,Arial,sans-serif!important}
body{line-height:1.65}
.accessibility-launcher{position:fixed;right:16px;bottom:100px;z-index:60;display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 16px;border:2px solid #fff;border-radius:30px;background:#39291e;color:#fff;box-shadow:0 4px 18px #0003;font-size:16px;font-weight:600;cursor:pointer}
.accessibility-launcher svg{width:24px;height:24px}
.accessibility-panel{position:fixed;inset:0 16px 0 auto;margin:auto 0;width:min(360px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid #cbb9a5;border-radius:20px;background:#fffaf4;color:#29221c;box-shadow:0 18px 70px #0004;text-align:right}
.accessibility-panel::backdrop{background:#0006}
.accessibility-panel h2{font-size:24px;font-weight:700;margin:0 0 16px}
.accessibility-panel p{font-size:14px;line-height:1.7;margin:14px 0}
.accessibility-panel button{min-height:44px;border:1px solid #877363;border-radius:10px;padding:10px 12px;background:#fff;color:#29221c;font-size:16px;cursor:pointer}
.accessibility-panel button[aria-pressed=true]{background:#39291e;color:#fff;border-color:#39291e}
.accessibility-options{display:grid;gap:10px}
.accessibility-size{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}
.accessibility-panel a{text-decoration:underline;text-underline-offset:4px;display:inline-block;padding:8px 0}
.accessibility-panel :focus-visible,.accessibility-launcher:focus-visible{outline:3px solid #155aa8;outline-offset:4px}
html.a11y-links a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px!important}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-motion{scroll-behavior:auto!important}
html.a11y-contrast body,html.a11y-contrast body *:not(img):not(svg):not(path){background-color:#fff!important;background-image:none!important;color:#111!important;text-shadow:none!important}
html.a11y-contrast a{color:#003d80!important;text-decoration:underline!important}
html.a11y-contrast button,html.a11y-contrast dialog{border:2px solid #111!important}
html.a11y-contrast [aria-pressed=true]{outline:3px solid #003d80!important;outline-offset:-5px}
@media(max-width:480px){.accessibility-launcher{right:10px;bottom:92px;padding:10px 12px}.accessibility-panel{padding:20px}}
