/* Optional display preferences. Default page design comes from the original styles. */
.accessibility-launcher{position:fixed;left:max(18px,env(safe-area-inset-left));bottom:22px;z-index:34;display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border:1px solid #ab7068;border-radius:12px;color:#f3efe6;background:#291d23;box-shadow:0 6px 22px #0004;font:500 12px/1.4 var(--body,Arial,sans-serif);cursor:pointer}
.accessibility-launcher:hover{background:#45242b;border-color:#efaa9b}
.accessibility-launcher[hidden],.accessibility-active[hidden]{display:none!important}
body:has(dialog[open]) .accessibility-launcher{visibility:hidden}
.accessibility-active{font-size:10px;color:#ffd2b9;border-left:1px solid #9a7169;padding-left:8px}
.accessibility-dialog{width:min(460px,calc(100% - 28px));max-height:calc(100dvh - 28px);overflow:auto;margin:auto;padding:26px;background:#171b20;color:#f7f3eb;border:1px solid #9d726a;border-radius:16px;box-shadow:0 24px 90px #0009;font:400 15px/1.6 var(--body,Arial,sans-serif)}
.accessibility-dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}
.accessibility-panel-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px;position:sticky;top:-26px;z-index:2;background:#171b20;padding-block:8px}
.accessibility-kicker{color:#f0aa9c;letter-spacing:.13em;text-transform:uppercase;font-size:11px}
.accessibility-dialog h2{margin:4px 0 0;font-size:30px;line-height:1.2;letter-spacing:-.035em;overflow-wrap:anywhere}
.accessibility-dialog p{margin:0;color:#d0d2cf;font-size:14px;line-height:1.6}
.accessibility-dialog button{min-height:44px;color:#f7f3eb;border:1px solid #879199;background:transparent;border-radius:7px;font:600 13px/1.4 var(--body,Arial,sans-serif);padding:10px 14px;cursor:pointer}
.accessibility-dialog .accessibility-close{width:44px;flex:none;padding:6px;font-size:25px;line-height:1}
.accessibility-options{border:0;padding:0;margin:18px 0;display:grid;gap:8px;min-width:0}
.accessibility-options label{display:flex;align-items:center;gap:13px;padding:12px;border:1px solid #626d76;border-radius:9px;cursor:pointer;background:#ffffff03}
.accessibility-options label:has(input:checked){background:#a4342926;border-color:#f0aa9c}
.accessibility-options input{appearance:auto;accent-color:#b93828;width:21px;height:21px;min-height:21px;flex:none;margin:0}
.accessibility-options strong{display:block;font-size:15px;font-weight:600;line-height:1.5}
.accessibility-options small{display:block;font-size:12px;line-height:1.5;color:#d0d2cf;margin-top:3px}
.accessibility-dialog .accessibility-memory,.accessibility-dialog .accessibility-system{font-size:12px;line-height:1.6}
.accessibility-dialog .accessibility-system{margin-top:6px}
.accessibility-panel-actions{display:flex;gap:10px;justify-content:space-between;margin-top:20px;flex-wrap:wrap}
.accessibility-panel-actions #accessibilityDone{background:#a93125;border-color:#f0aa9c;min-width:92px}
.accessibility-dialog :focus-visible,.accessibility-launcher:focus-visible{outline:3px solid #ffd2b9!important;outline-offset:3px!important}
html[data-a11y-motion=true]{scroll-behavior:auto!important}
html[data-a11y-motion=true] *,html[data-a11y-motion=true] *::before,html[data-a11y-motion=true] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-a11y-motion=true] .hero-image-window img,html[data-a11y-motion=true] .roof-layer{transform:none!important}
/* Match the header's native reduced-motion state, including direct transforms. */
html[data-a11y-motion=true] .site-nav a::before{display:none}
html[data-a11y-motion=true] .site-header a:active,html[data-a11y-motion=true] .site-header button:active{transform:none}
html[data-a11y-motion=true] .hero-glass-sheen,html[data-a11y-motion=true] .hero-frame-trace{display:none!important}
@media(max-width:760px){.accessibility-launcher{bottom:calc(90px + env(safe-area-inset-bottom));left:14px;font-size:11px;padding:9px 11px}.accessibility-dialog{padding:20px}.accessibility-panel-top{top:-20px}.accessibility-active{font-size:9px}}
@media(max-height:560px){.accessibility-dialog{padding:18px}.accessibility-panel-top{margin-bottom:8px;top:-18px}.accessibility-options{margin:12px 0}.accessibility-options label{padding:9px}}
@media(forced-colors:active){.accessibility-launcher,.accessibility-dialog,.accessibility-dialog button,.accessibility-options label{background:Canvas;color:CanvasText;border-color:ButtonText}.accessibility-options input{accent-color:auto}.accessibility-options label:has(input:checked){outline:2px solid Highlight}.accessibility-dialog :focus-visible,.accessibility-launcher:focus-visible{outline-color:Highlight!important}}
@media print{.accessibility-launcher,.accessibility-dialog{display:none!important}}
/* Floating buttons (accessibility, back to top, mobile contact bar) must not cover the legal links. Doubled class beats .knowledge-page .site-footer. */
@media(max-width:1100px){.site-footer.site-footer{padding-bottom:92px}}
@media(max-width:760px){.site-footer.site-footer{padding-bottom:calc(150px + env(safe-area-inset-bottom))}}
