/* Styles propres aux pages légales (conditions, politiques). Le reste
   (topbar, header, footer, breadcrumb, page-hero...) est déjà couvert par
   site.css. */

.legal-layout{
  display:grid;
  grid-template-columns:240px 1fr;
  gap:48px;
  align-items:start;
}
@media (max-width:820px){
  .legal-layout{ grid-template-columns:1fr; gap:28px; }
}

.legal-menu{
  position:sticky;
  top:24px;
  display:flex;
  flex-direction:column;
  gap:2px;
  border-left:2px solid var(--line-soft);
}
@media (max-width:820px){
  .legal-menu{
    position:static;
    flex-direction:row;
    flex-wrap:wrap;
    border-left:none;
    gap:8px;
    padding-bottom:8px;
    border-bottom:1px solid var(--line-soft);
  }
}

.legal-menu a{
  padding:9px 16px;
  font-size:0.88rem;
  color:var(--ink-soft);
  border-left:2px solid transparent;
  margin-left:-2px;
}
.legal-menu a:hover{ color:var(--brand); }
.legal-menu a[aria-current="page"]{
  color:var(--brand-deeper);
  font-weight:600;
  border-left-color:var(--brand);
}
@media (max-width:820px){
  .legal-menu a{
    padding:6px 12px;
    border:1px solid var(--line);
    border-radius:999px;
    margin-left:0;
  }
  .legal-menu a[aria-current="page"]{
    border-color:var(--brand);
    background:rgba(14,80,119,0.06);
  }
}

.legal-content{ max-width:760px; }
.legal-content h2{
  font-size:1.35rem;
  margin-top:44px;
  margin-bottom:14px;
  padding-top:20px;
  border-top:1px solid var(--line-soft);
}
.legal-content > h2:first-child{ margin-top:0; padding-top:0; border-top:none; }
.legal-content h3{ font-size:1.05rem; margin-top:26px; margin-bottom:10px; }
.legal-content p{ margin-bottom:14px; font-size:0.96rem; }
.legal-content ul{ margin:0 0 14px; padding-left:22px; }
.legal-content li{ margin-bottom:8px; font-size:0.96rem; color:var(--ink-soft); }
.legal-content li > ul{ margin-top:8px; }
.legal-content a{ color:var(--brand); text-decoration:underline; text-underline-offset:2px; }
.legal-content a:hover{ color:var(--brand-deeper); }
.legal-content strong{ color:var(--ink); }
