/* Page « Mentions légales » : s'appuie sur les couleurs et la police de app.css (même thème clair / sombre). */
.legal-wrap { max-width: 720px; margin: 0 auto; padding: 28px 22px 72px; font-size: 15px; line-height: 1.65; }
.legal-top { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding-bottom: 16px; margin-bottom: 8px; border-bottom: 1px solid var(--line); }
.legal-home { display: inline-flex; align-items: center; flex: none; }
.legal-top .logo { height: 24px; }
.legal-sp { flex: 1; }
.legal-lang { flex: none; }
.legal-lang button { min-height: 32px; padding: 0 12px; font-size: 13px; }
.legal-back { color: var(--muted); text-decoration: none; font-size: 14px; }
.legal-back:hover { color: var(--ink); text-decoration: underline; }
.legal-wrap h1 { font-size: 26px; font-weight: 500; margin: 22px 0 4px; }
.legal-wrap h2 { font-size: 17px; font-weight: 500; margin: 30px 0 6px; }
/* Texte justifié (demande de Bruno) ; la césure automatique évite les grands trous entre les mots sur un écran étroit. */
.legal-wrap p { margin: 8px 0; text-align: justify; hyphens: auto; -webkit-hyphens: auto; }
.legal-wrap a { color: var(--brand-text); text-underline-offset: 3px; hyphens: none; -webkit-hyphens: none; } /* jamais de césure dans une adresse */
.legal-wrap a:hover { color: var(--ink); }
.legal-wrap .legal-upd { color: var(--muted); font-size: 13px; margin-top: 0; text-align: left; hyphens: none; }
.legal-wrap .legal-foot { margin-top: 40px; padding-top: 16px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); text-align: left; hyphens: none; }
.legal-wrap [hidden] { display: none; }
