/* Pages légales : mentions légales et CGV */
.legal { background: #fff; }
.lg { max-width: 48rem; margin: 0 auto; padding: calc(var(--nav-h, 80px) + clamp(40px, 8vh, 96px)) clamp(20px, 5vw, 3rem) clamp(64px, 12vh, 140px); }
.lg-title { font-family: var(--f-display); font-size: clamp(2.2rem, 1.4rem + 2.6vw, 3.8rem); line-height: 1.05; margin-top: .3em; }
.lg-sub { font-family: var(--f-title); font-weight: 300; color: var(--grey-700); margin-top: .8em; }
.lg-nav { display: flex; flex-wrap: wrap; gap: .6em 1.6em; margin-top: 2em; padding-bottom: 1.4em; border-bottom: 1px solid var(--hair, rgba(0,0,0,.12)); font-family: var(--f-title); font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; }
.lg-nav a { color: var(--grey-700); text-decoration: none; }
.lg-nav a:hover, .lg-nav a[aria-current="page"] { color: var(--mahogany); }
.lg-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: .4em; }
.lg-body { margin-top: clamp(28px, 5vh, 56px); }
.lg-sec + .lg-sec { margin-top: clamp(28px, 4vh, 44px); }
.lg-sec h2 { font-family: var(--f-title); font-weight: 400; font-size: var(--t-h6, 1.15rem); line-height: 1.3; margin-bottom: .7em; }
.lg-sec p, .lg-sec li { font-weight: 300; line-height: 1.7; color: var(--grey-800, #333); }
.lg-sec p + p { margin-top: .5em; }
.lg-sec ul { margin: .5em 0 .6em 1.2em; list-style: disc; }
.lg-sec a { color: var(--mahogany); text-decoration: underline; text-underline-offset: .2em; word-break: break-word; }

/* Page 404 */
.nf-box { text-align: left; }
.nf-text { font-weight: 300; line-height: 1.7; color: var(--grey-700); margin-top: 1.2em; max-width: 34rem; }
.nf-links { list-style: none; padding: 0; margin: 1.8em 0 2.2em; border-top: 1px solid var(--hair, rgba(0,0,0,.12)); }
.nf-links a { display: flex; justify-content: space-between; padding: 1em 0; border-bottom: 1px solid var(--hair, rgba(0,0,0,.12)); font-family: var(--f-title); color: var(--ink, #2b2b2b); text-decoration: none; }
.nf-links a:hover { color: var(--mahogany); }
