/* Pagine per i motori di ricerca (generate da tools/build-landing.js), caricate dopo style.css.
   File separato e fuori dalla cache del service worker: chi ha una versione vecchia dell'app
   vede comunque queste pagine con lo stile giusto. */
.landing-crumbs { font-size: 0.85em; color: var(--muted); margin-bottom: 10px; }
.legal-body .landing-crumbs a { color: inherit; font-weight: 400; }
.landing-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 18px 0 8px; }
.legal-body a.landing-cta {
    display: inline-flex; align-items: center; min-height: 44px; padding: 10px 20px;
    background: var(--accent); color: #fff; border-radius: 999px; text-decoration: none; font-weight: 700;
}
.legal-body a.landing-cta:hover { background: var(--accent-ink); }
.landing-free { font-size: 0.88em; color: var(--muted); }
.landing-steps { padding-left: 22px; }
.landing-steps li { margin-bottom: 6px; }
.landing-words { list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 6px 18px; }
.landing-words strong { font-family: var(--font-ui); letter-spacing: 0.06em; margin-right: 6px; }
.landing-figure { margin: 14px 0; text-align: center; }
.landing-figure img { width: 100%; max-width: 480px; height: auto; border: 1px solid var(--line); border-radius: var(--radius-sm); }
.landing-figure figcaption { font-size: 0.85em; color: var(--muted); margin-top: 6px; }
.landing-faq details { border-bottom: 1px solid var(--line); padding: 10px 0; }
.landing-faq summary { cursor: pointer; font-weight: 650; }
.landing-faq details p { margin: 8px 0 0; }
.landing-related { padding-left: 20px; }
