.xp-legal { max-width: 820px; margin: 0 auto; padding: 32px 24px 64px; }
.xp-legal__header { display: flex; align-items: center; justify-content: space-between; padding: 12px 0 28px; border-bottom: 1px solid #e5e9f0; margin-bottom: 36px; }
.xp-legal__brand { font-weight: 800; font-size: 1.2rem; color: #101828; text-decoration: none; letter-spacing: 0.02em; }
.xp-legal__title { font-size: 1.9rem; font-weight: 800; color: #101828; margin: 0 0 24px; }
.xp-legal__content h2 { font-size: 1.15rem; font-weight: 700; color: #101828; margin: 28px 0 10px; }
.xp-legal__content p { color: #344054; line-height: 1.65; margin: 0 0 12px; }
.xp-legal__back { margin-top: 40px; }
.xp-legal__back a { color: #344054; text-decoration: none; font-weight: 600; }
.xp-legal__back a:hover { text-decoration: underline; }

/* --- Rendu autonome : fond blanc force --- */
body.xp-legal-body { background: #fff !important; color: #344054; margin: 0; font-family: inherit; }

/* --- Bouton fermer --- */
.xp-legal__close { margin-top: 44px; text-align: center; }
.xp-legal__close-btn { display: inline-block; padding: 10px 22px; border: 1px solid #d0d5dd; border-radius: 8px; background: #fff; color: #344054; font-weight: 600; font-size: 0.95rem; cursor: pointer; }
.xp-legal__close-btn:hover { background: #f8f9fa; }
