/* Deutlich sichtbarer Tastaturfokus auf hellen und dunklen Flächen. */
:where(
  a[href],
  button,
  input:not([type="hidden"]),
  select,
  textarea,
  summary,
  [role="button"],
  [role="switch"],
  [tabindex]:not([tabindex="-1"])
):focus-visible {
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 6px #fff !important;
}

/* Visuell versteckte Sprungnavigation beim Tastaturfokus einblenden. */
.skip-link:focus,
.skip-link:focus-visible {
  position: fixed !important;
  z-index: 1000000 !important;
  top: 12px !important;
  left: 12px !important;
  width: auto !important;
  height: auto !important;
  clip: auto !important;
  clip-path: none !important;
  overflow: visible !important;
  padding: 12px 18px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 1rem !important;
  line-height: 1.4 !important;
}

/* Fokus der visuell versteckten OneTap-Eingaben am sichtbaren Schalter zeigen. */
nav.onetap-accessibility label:has(input:focus-visible) {
  outline: 3px solid #000 !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 6px #fff !important;
}

.icon-button:focus-visible,
.hamburger-button:focus-visible,
.accordion-button button:focus-visible,
.clb-slider-nav-btn:focus-visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

.mrp-field-label {
  display: block;
  margin-bottom: 0.35rem;
  font: inherit;
}

.mrp-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
