/* Adattamenti locali: il resto dello stile è quello della pagina originale. */
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 115px; }
.language-local { display: inline-flex; align-items: center; justify-content: center; background-image: none; padding: 8px 13px; cursor: default; }
.local-phone { display: flex; align-items: center; border: 1px solid var(--border, #263038); border-radius: 12px; background: var(--bg, #0b1117); overflow: hidden; }
.local-phone > span { flex: none; padding-left: 12px; font-size: 14px; white-space: nowrap; }
.local-phone input { min-width: 0; border: 0 !important; background: transparent !important; box-shadow: none !important; padding-left: 9px; }
.local-phone:focus-within { outline: 2px solid var(--accent); outline-offset: 2px; }
.local-map { height: 100%; min-height: 340px; position: relative; background: #101c20; overflow: hidden; }
.local-map svg { width: 100%; height: 100%; min-height: 340px; object-fit: cover; position: absolute; inset: 0; }
.local-map > span { position: absolute; left: 50%; top: 65%; transform: translateX(-50%); padding: 7px 14px; border: 1px solid #31504b; border-radius: 8px; background: #101c20; color: #d7e9e5; white-space: nowrap; font-size: 13px; }
[data-link-da-configurare] { cursor: pointer; }
.local-toast { position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%); width: max-content; max-width: calc(100% - 32px); background: var(--card); color: var(--ink); border: 1px solid var(--accent); padding: 14px 20px; border-radius: 12px; box-shadow: 0 8px 32px #0005; z-index: 999; font-size: 14px; }
.form-msg { margin-top: 14px; padding: 12px; border-radius: 10px; line-height: 1.6; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
@media (max-width: 480px) { .hero-h1 { overflow-wrap: break-word; } .local-map { min-height: 240px; } .local-map svg { min-height: 240px; } .earn-xp-title { overflow-wrap: break-word; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } #neural-canvas { display: none; } .reveal, .earn-kpi, .earn-earner-card { opacity: 1; transform: none; } }
/* Keep the requested ticker moving gently instead of looping every .01ms. */
@media (prefers-reduced-motion: reduce) { .ticker-track { animation-duration: 56s !important; } }
