/* Static-only accessibility and readability adaptations to the unmodified reference CSS. */
.static-header { background: hsl(var(--background) / .97); border-bottom: 1px solid hsl(var(--border)); }
[aria-current="page"] { color: #C47A32; }
a, summary { -webkit-tap-highlight-color: transparent; }
a:focus-visible, summary:focus-visible { outline: 3px solid #C47A32; outline-offset: 5px; }
.skip-link { position: fixed; top: -100px; left: 1rem; z-index: 100; padding: .7rem 1rem; color: #fff; background: #29221e; }
.skip-link:focus { top: 1rem; }
.mobile-menu summary { min-width: 44px; min-height: 44px; display: grid; place-items: center; cursor: pointer; font-size: .8rem; }
.mobile-menu summary::-webkit-details-marker, .faq-item summary::-webkit-details-marker { display: none; }
.mobile-menu nav { position: absolute; top: 100%; left: 0; right: 0; display: flex; flex-direction: column; gap: .3rem; padding: 1rem 1.25rem 1.5rem; background: hsl(var(--background)); border-bottom: 1px solid hsl(var(--border)); max-height: calc(100dvh - 76px); overflow-y: auto; box-shadow: 0 12px 24px #29221e12; }
.mobile-menu nav a { display: block; padding: .7rem; }
.faq-item summary { cursor: pointer; list-style: none; min-height: 44px; }
.faq-item summary::after { content: '+'; flex-shrink: 0; color: #C47A32; font-size: 1.4rem; line-height: 1; }
.faq-item[open] summary::after { content: '−'; }
.symbol-caption { position: absolute; z-index: 2; bottom: .6rem; left: .6rem; right: .6rem; width: fit-content; max-width: calc(100% - 1.2rem); background: #29221ee8; color: #fff; border-radius: .3rem; padding: .25rem .5rem; font-size: 10px; line-height: 1.45; }
.local-overview > div:nth-child(2) { background: #29221ee8; }
.source-list { margin-top: 1.8rem; font-size: .8rem; line-height: 1.65; }
.source-list li { margin-bottom: .75rem; }
.source-list a, .source-refs a, .legal-section a { text-decoration: underline; text-underline-offset: .2em; }
.source-list small { display: block; opacity: .85; }
.source-refs { display: block; margin-top: .8rem; font-size: .75rem; }
.local-section { margin-bottom: 3rem; }
.legal-section, .contact-section { padding-top: 124px; }
#inhalt, [id^="source-"] { scroll-margin-top: 110px; }
main a[href^="mailto:"], footer a[href^="mailto:"] { overflow-wrap: anywhere; }
main p, .source-list a { overflow-wrap: break-word; }
.preview-notice { padding: .7rem; text-align: center; background: #fff0ba; color: #29221e; font-weight: 700; position: relative; z-index: 60; }
@media (min-width:768px) { .legal-section, .contact-section { padding-top: 160px; } }
@media (prefers-reduced-motion:reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
