/* legal.css - Pages légales (Mentions, CGV, Politique de retour)
   Base depuis theme.css, on style ici la mise en page prose + le sommaire. */

.legalpage { padding: 32px 0 72px; }
.legal-grid { display: grid; grid-template-columns: 250px 1fr; gap: 48px; align-items: start; }

/* Sommaire latéral (sticky) */
.lnav { position: sticky; top: calc(var(--header-h) + 16px); background: var(--blanc); border: 1px solid var(--ligne); border-radius: var(--r); padding: 8px; }
.lnav a { display: block; padding: 11px 14px; border-radius: var(--rs); font-size: 14px; font-weight: 600; color: var(--g700); }
.lnav a:hover { background: var(--g50); color: var(--noir); }
.lnav a.active { background: var(--g50); color: var(--noir); }

/* Corps de texte */
.prose { max-width: 768px; }
.prose h2 { font-size: 20px; margin: 30px 0 10px; padding-top: 24px; border-top: 1px solid var(--ligne); }
.prose h2:first-of-type { border-top: none; padding-top: 0; margin-top: 0; }
.prose h3 { font-size: 15.5px; margin: 18px 0 6px; }
.prose p { color: #3c3c3c; font-size: 15px; margin-bottom: 12px; }
.prose ul, .prose ol { margin: 0 0 14px 20px; }
.prose li { margin-bottom: 6px; color: #3c3c3c; font-size: 15px; }
.prose a { color: var(--noir); box-shadow: inset 0 -2px 0 var(--or); }
.prose .muted { color: var(--muted); }
.prose strong, .prose b { color: var(--noir); }

/* Liste d'identité (dénomination, SIREN…) */
.idlist { margin: 10px 0 18px; }
.idlist div { padding: 3px 0; font-size: 15px; color: #3c3c3c; }
.idlist dt { display: inline; font-weight: 700; color: var(--g700); }
.idlist dt::after { content: " : "; }
.idlist dd { display: inline; color: #3c3c3c; }

/* Encadré d'information */
.note { background: #fff8e1; border: 1px solid #f3df9e; border-radius: var(--rs); padding: 14px 16px; font-size: 14px; color: #6b5800; margin: 0 0 24px; }
.note b { color: #5a4500; }

/* Formulaire type (rétractation) */
.formbox { background: var(--g50); border: 1px solid var(--ligne); border-radius: var(--rs); padding: 18px 20px; margin: 8px 0 18px; }
.formbox p { color: #3c3c3c; font-size: 14px; margin-bottom: 10px; }
.formbox p:last-child { margin-bottom: 0; }

.lastmod { font-size: 13px; color: var(--muted); margin-top: 34px; padding-top: 16px; border-top: 1px solid var(--ligne); }

@media (max-width: 900px) {
  .legal-grid { grid-template-columns: 1fr; }
  .lnav { position: static; display: flex; gap: 6px; flex-wrap: wrap; }
  .lnav a { flex: 1 1 auto; text-align: center; }
}
