/* A11y Fixer – Basisstile */

/* Skip-Link: unsichtbar bis er per Tab fokussiert wird */
.wpa11yfix-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 100000;
	padding: 12px 20px;
	background: #000;
	color: #fff;
	text-decoration: none;
	font-size: 16px;
}
.wpa11yfix-skip-link:focus {
	left: 8px;
	top: 8px;
}

/* Sichtbarer Fokus für Tastaturnutzer.
   Wird per body-class deaktiviert, falls im Backend abgeschaltet. */
body:not(.wpa11yfix-no-focus-css) a:focus-visible,
body:not(.wpa11yfix-no-focus-css) button:focus-visible,
body:not(.wpa11yfix-no-focus-css) input:focus-visible,
body:not(.wpa11yfix-no-focus-css) textarea:focus-visible,
body:not(.wpa11yfix-no-focus-css) select:focus-visible,
body:not(.wpa11yfix-no-focus-css) [role="button"]:focus-visible,
body:not(.wpa11yfix-no-focus-css) [tabindex]:focus-visible,
body:not(.wpa11yfix-no-focus-css) .elementor-nav-menu a:focus-visible,
body:not(.wpa11yfix-no-focus-css) .elementor-icon:focus-visible {
	outline: 3px solid #1a73e8 !important;
	outline-offset: 2px !important;
}

/* Elementor-Animationen bei reduzierter Bewegung abschalten,
   sofern nicht per body-class deaktiviert. */
@media ( prefers-reduced-motion: reduce ) {
	body:not(.wpa11yfix-no-motion-css) .elementor-element,
	body:not(.wpa11yfix-no-motion-css) [data-settings*="_animation"],
	body:not(.wpa11yfix-no-motion-css) .elementor-invisible {
		animation: none !important;
		transition: none !important;
		opacity: 1 !important;
		transform: none !important;
	}
}
