.legal-shell { max-width: 1080px; }
.legal-document { max-width: 820px; margin: 64px auto 80px; line-height: 1.75; }
.legal-document h1 { margin: 28px 0; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.18; letter-spacing: -.035em; }
.legal-document h2 { margin: 48px 0 18px; font-size: 1.45rem; line-height: 1.35; letter-spacing: -.015em; }
.legal-document h3 { margin: 36px 0 16px; font-size: 1.22rem; line-height: 1.4; }
.legal-document p { margin: 0 0 20px; }
.legal-document ul { margin: 0 0 24px; padding-left: 24px; }
.legal-document li { margin-bottom: 16px; }
.legal-document a { color: inherit; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal-shortcuts { display: flex; flex-wrap: wrap; gap: 14px 24px; padding-bottom: 24px; border-bottom: 1px solid var(--border, #8885); font-size: .92rem; }
.legal-language[hidden] { display: none !important; }
.legal-document section, .legal-document h2, .legal-document h3 { scroll-margin-top: 24px; }
.legal-document > section { scroll-margin-top: 96px; }
#confidentialite { padding-top: 24px; margin-top: 56px; border-top: 1px solid var(--border, #8885); }
@media (max-width: 600px) {
  .legal-document { margin: 40px auto 56px; font-size: .96rem; }
  .legal-document h2 { margin-top: 36px; }
}
@media print {
  .legal-page .site-nav, .legal-page .site-footer, .legal-shortcuts { display: none; }
  .legal-document { max-width: none; margin: 0; color: #000; }
  .legal-page { background: #fff; }
  .legal-document h2, .legal-document h3 { break-after: avoid; }
}
