/* Pages légales (mentions légales, confidentialité, jeu responsable), fabriquées par legal.py.
   Chargé après accueil.css, strategies.css (en-tête, menu, .cadre) et pied.css. */

.legal { width: 100%; max-width: 960px; margin: clamp(22px, 3vw, 40px) auto clamp(30px, 4vw, 54px); padding: 0 var(--marge); }
.legal-cadre { padding: clamp(22px, 3.4vw, 46px) clamp(18px, 3.6vw, 52px); }
.legal-titre {
  margin: 0; font-family: "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif; font-weight: 700;
  font-size: clamp(1.9rem, 3.6vw, 2.9rem); line-height: 1.12;
  background: linear-gradient(180deg, #fff7c8 0%, #ffd94f 38%, #e09a10 58%, #ffcf45 78%, #fff1a6 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  filter: drop-shadow(0 2px 0 #2a1600) drop-shadow(0 0 14px rgba(255, 190, 60, .35));
}
.legal-maj { margin: 8px 0 6px !important; font-size: .86rem; color: rgba(255, 255, 255, .6) !important; }
.legal section { margin-top: 26px; padding-top: 18px; border-top: 1px solid rgba(247, 201, 72, .2); }
.legal h2 {
  margin: 0 0 10px; font-family: "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif; font-weight: 700;
  font-size: clamp(1.15rem, 1.6vw, 1.4rem); color: var(--or); text-shadow: 0 0 10px rgba(247, 201, 72, .3);
}
.legal p { margin: 0 0 .75em; line-height: 1.65; color: rgba(255, 255, 255, .9); }
.legal ul { display: flex; flex-direction: column; gap: 7px; margin: 4px 0 .8em; }
.legal li { position: relative; padding-left: 22px; line-height: 1.55; color: rgba(255, 255, 255, .9); }
.legal li::before {
  content: ""; position: absolute; left: 4px; top: .6em; width: 7px; height: 7px; border-radius: 50%;
  background: var(--or); box-shadow: 0 0 8px rgba(247, 201, 72, .8);
}
.legal a { color: var(--or-clair); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(247, 201, 72, .5); }
.legal a:hover { color: #fff; text-decoration-color: var(--or); }
.editeur { margin: 0; display: grid; gap: 8px; }
.editeur div { display: grid; grid-template-columns: minmax(0, 15em) minmax(0, 1fr); gap: 4px 16px; padding-bottom: 8px; border-bottom: 1px dashed rgba(110, 160, 255, .22); }
.editeur dt { font-weight: 700; color: rgba(255, 255, 255, .78); }
.editeur dd { margin: 0; color: #fff; }
.a-completer {
  display: inline-block; padding: .1em .6em; border-radius: 6px; font-weight: 700; font-size: .9rem;
  color: #ffd2d6; background: rgba(255, 30, 50, .14); border: 1.5px dashed rgba(255, 90, 106, .85);
}

@media (max-width: 600px) {
  .editeur div { grid-template-columns: minmax(0, 1fr); }
}
