/* Pages juridiques Assurance Mouigni */
.legal-page{background:#fff;color:#102a56}
.legal-hero{padding:72px 0 78px;background:#dce6f0}
.legal-hero__inner{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}
.legal-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#ff3131;font-size:.75rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.legal-eyebrow:before{content:"";width:30px;height:2px;background:#ff3131}
.legal-hero h1{max-width:850px;margin:14px 0 18px;color:#102a56;font-size:clamp(2.7rem,5vw,5rem);line-height:.98;letter-spacing:-.055em}
.legal-hero p{max-width:760px;margin:0;color:#50647d;line-height:1.8}
.legal-content-section{padding:70px 0 110px}
.legal-layout{display:grid;grid-template-columns:270px minmax(0,850px);justify-content:center;gap:70px;align-items:start}
.legal-single-column{max-width:940px}
.legal-toc{position:sticky;top:110px;display:grid;gap:4px;padding:22px;border:1px solid #e1e7ef;border-radius:18px;background:#f7f9fc}
.legal-toc strong{margin-bottom:10px}
.legal-toc a{padding:9px 10px;border-radius:9px;color:#64748b;font-size:.84rem;text-decoration:none}
.legal-toc a:hover{color:#102a56;background:#fff}
.legal-content>section{scroll-margin-top:120px;padding:0 0 46px;margin-bottom:46px;border-bottom:1px solid #e5eaf0}
.legal-content>section:last-child{border-bottom:0}
.legal-number{display:block;margin-bottom:10px;color:#ff3131;font-size:.8rem;font-weight:950;letter-spacing:.1em}
.legal-content h2{margin:0 0 16px;color:#102a56;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.1}
.legal-content p,.legal-content li{color:#52657c;line-height:1.82}
.legal-content ul{display:grid;gap:8px;margin-top:18px;padding-left:22px}
.legal-callout,.legal-warning{margin-bottom:50px;padding:24px 26px;border-radius:18px}
.legal-callout{border-left:5px solid #ff3131;background:#fff3f3}
.legal-warning{border:1px solid #f1cf7d;background:#fff9e9}
.legal-callout strong,.legal-warning strong{display:block;margin-bottom:7px}
.legal-definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.legal-definition-grid>div{padding:20px;border:1px solid #e1e7ef;border-radius:14px;background:#f8fafc}
.legal-definition-grid span,.legal-contact-card span{display:block;margin-bottom:5px;color:#7b899c;font-size:.73rem;font-weight:800;text-transform:uppercase}
.legal-contact-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}
.legal-contact-card>div{padding:20px;border-radius:14px;background:#102a56}
.legal-contact-card strong,.legal-contact-card a{color:#fff;text-decoration:none;word-break:break-word}
.legal-inline-link{display:inline-flex;margin-top:18px;color:#ff3131;font-weight:850;text-decoration:none}
@media(max-width:980px){.legal-layout{grid-template-columns:1fr;gap:35px}.legal-toc{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.legal-hero{padding:54px 0}.legal-hero__inner{align-items:flex-start;flex-direction:column}.legal-definition-grid,.legal-contact-card{grid-template-columns:1fr}}
@media(max-width:560px){.legal-content-section{padding:48px 0 75px}.legal-toc{grid-template-columns:1fr}.legal-callout,.legal-warning{padding:20px}}
