/* Shared keyboard, motion and readable legal-page styles. */
:focus-visible { outline: 3px solid #0077b6; outline-offset: 4px; }
.skip-link { position: absolute; left: 12px; top: -100px; z-index: 100; padding: 12px 18px; background: #fff; color: #064f78; }
.skip-link:focus { top: 12px; }
body.legal-page { overflow-wrap: anywhere; }
.legal-page h1, .legal-page h2, .legal-page a { color: #075985; }
.legal-page a { text-decoration: underline; text-underline-offset: .18em; }
.legal-page footer { margin-top: 40px; padding-top: 20px; border-top: 1px solid #ccc; }
.legal-page nav a, .legal-page footer a { display: inline-block; padding: 8px; }
body.landing-page :focus-visible { outline-color: #7dd3fc; }
.landing-page footer, .landing-page footer p, .landing-page footer a { color: #cbd5e1; }
.landing-page nav a { display: inline-block; padding: 8px; }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
    .hero h1, .hero p, .store-link { opacity: 1 !important; transform: none !important; }
}
