
* { box-sizing: border-box; }
html { scroll-padding-top: 24px; }
body { margin: 0; background: #0a0e27; color: #e0e0e0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; line-height: 1.75; overflow-wrap: anywhere; }
.container { max-width: 800px; margin: 0 auto; padding: 52px 24px; }
header { text-align: center; margin-bottom: 36px; }
.logo { display: block; margin: 0 auto 16px; border-radius: 22px; }
h1 { color: #fff; font-size: clamp(26px, 4vw, 32px); line-height: 1.3; margin: 0 0 12px; }
.subtitle { color: #a5abc9; font-size: 14px; margin-bottom: 24px; }
a { color: #9cccff; text-underline-offset: 3px; }
a:hover { color: #c5e1ff; }
a:focus-visible { outline: 3px solid #9cccff; outline-offset: 4px; border-radius: 3px; }
.nav, .languages { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 16px; border: 1px solid #3c466a; border-radius: 8px; text-decoration: none; font-size: 14px; }
.nav a[aria-current="page"] { background: #1a3355; border-color: #7eb8ff; }
.languages { margin-top: 16px; font-size: 14px; }
.languages a { display: inline-flex; align-items: center; min-height: 44px; padding: 4px 8px; }
.intro { background: #111633; border: 1px solid #283257; border-radius: 12px; padding: 20px 24px; margin-bottom: 32px; }
.intro p:last-child { margin-bottom: 0; }
h2 { color: #9cccff; font-size: 22px; line-height: 1.45; margin: 38px 0 14px; padding-bottom: 10px; border-bottom: 1px solid #283257; }
h3 { color: #fff; font-size: 18px; line-height: 1.45; margin: 24px 0 10px; }
p { margin: 0 0 16px; color: #c4c8d8; }
footer { text-align: center; border-top: 1px solid #283257; margin-top: 48px; padding-top: 24px; font-size: 13px; }
footer p { color: #a5abc9; }
.technical { margin-top: 48px; }
.skip-link { position: fixed; top: 8px; left: 8px; padding: 10px 16px; background: #111633; transform: translateY(-150%); z-index: 1; }
.skip-link:focus { transform: translateY(0); }
@media (max-width: 560px) { .container { padding: 36px 20px; } .nav a { flex: 1 1 100%; } .intro { padding: 20px; } h2 { font-size: 20px; } }
.store { margin: 0 0 20px; }
.store-link { display: inline-flex; max-width: 100%; box-sizing: border-box; text-align: center; align-items: center; justify-content: center; min-height: 44px; padding: 10px 20px; border-radius: 10px; background: #fff; color: #0a0e27; font-weight: 600; font-size: 15px; text-decoration: none; }
.store-link:hover { background: #dfe9ff; color: #0a0e27; }
