
.titre-page{padding:clamp(120px,14vw,190px) 0 clamp(40px,6vw,80px)}
.titre-page .retour{display:inline-block;margin-bottom:clamp(28px,4vw,48px);font-weight:500;text-decoration:none;color:var(--gris);transition:color .2s}
.titre-page .retour:hover{color:var(--blanc)}
.titre-page .etiquette{display:block;margin-bottom:clamp(14px,2vw,24px)}
.titre-page h1{font-weight:800;letter-spacing:-.055em;font-size:16vw}

.legal{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);gap:0 clamp(24px,5vw,88px);padding-bottom:clamp(80px,10vw,150px)}
.legal h2{grid-column:1;font-size:clamp(1.5rem,2.6vw,2.3rem);letter-spacing:-.035em;line-height:1;padding-top:28px;border-top:1px solid var(--ligne)}
.legal .corps{grid-column:2;padding:28px 0 56px;border-top:1px solid var(--ligne);display:grid;gap:14px;max-width:68ch}
.legal p{color:var(--gris)}
.legal a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:var(--accent);color:var(--blanc)}
.legal a:hover{text-decoration-color:currentColor}
.legal dl{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:10px 24px}
.legal dt{font-size:.8rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);padding-top:.25em}
.legal dd{color:var(--blanc)}
.legal .maj{grid-column:1/-1;padding-top:28px;border-top:1px solid var(--ligne);font-size:.9rem;color:var(--gris)}

.erreur{min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:96px 0 clamp(24px,3vw,40px)}
.erreur h1{font-weight:inherit;letter-spacing:0;line-height:1}
.erreur .geant{display:block;font-weight:800;letter-spacing:-.06em;line-height:.86;font-size:min(38vw,56svh);padding:0 0 .06em}
.erreur .message{display:block;margin-top:clamp(20px,3vw,36px);font-size:clamp(1.6rem,3.6vw,3.2rem);font-weight:700;letter-spacing:-.03em;line-height:1}
.erreur .suite{display:grid;gap:18px;justify-items:start;width:100%;margin-top:clamp(18px,2.4vw,28px)}
.erreur .suite p{max-width:52ch;color:var(--gris)}
.erreur .liens{list-style:none;display:flex;flex-wrap:wrap;gap:10px 24px}
.erreur .liens a{font-weight:500;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;text-decoration-color:var(--accent)}
.erreur .liens a:hover{text-decoration-color:currentColor}

@media (max-width:800px){
    .legal{grid-template-columns:1fr}
    .legal h2,.legal .corps{grid-column:1}
    .legal .corps{border-top:none;padding-top:16px}
    .legal dl{grid-template-columns:1fr;gap:2px}
    .legal dd{margin-bottom:12px}
  }
