/* Correctifs ciblés : plan du site + pages légales.
   Objectif : pages utiles propres, lisibles, sans impacter les pages money SEO.
*/
body.rb-utility-page .rb-inner-hero{
  padding:clamp(2.8rem,5vw,4.8rem) 0 clamp(1.5rem,3vw,2.5rem) !important;
}
body.rb-utility-page .rb-inner-hero__grid{
  grid-template-columns:minmax(0,1fr) minmax(300px,380px) !important;
}
body.rb-utility-page .rb-inner-title{
  max-width:820px !important;
  font-size:clamp(2.8rem,5.2vw,5rem) !important;
  line-height:.94 !important;
}
body.rb-utility-page .rb-inner-proof-strip{
  display:none !important;
}
body.rb-utility-page .rb-inner-content{
  width:min(calc(100% - 40px),1120px) !important;
  gap:24px !important;
  margin-top:0 !important;
  margin-bottom:clamp(3rem,7vw,6rem) !important;
}

/* Plan du site */
body.page-plan-du-site .rb-sitemap-content{
  width:min(calc(100% - 40px),1120px) !important;
}
body.page-plan-du-site .rb-sitemap-section{
  background:rgba(255,249,239,.76) !important;
  border:1px solid rgba(17,16,14,.12) !important;
  border-radius:34px !important;
  overflow:hidden !important;
}
body.page-plan-du-site .rb-sitemap-section .block-head{
  display:grid !important;
  grid-template-columns:minmax(0,.75fr) minmax(0,1fr) !important;
  gap:clamp(1.2rem,3vw,2.4rem) !important;
  align-items:end !important;
  padding:clamp(1.6rem,3vw,2.7rem) !important;
  border-bottom:1px solid rgba(17,16,14,.10) !important;
}
body.page-plan-du-site .rb-sitemap-section .block-head h2{
  margin:0 !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  font-family:var(--title) !important;
  font-size:clamp(2rem,4vw,3.8rem) !important;
  line-height:.94 !important;
  letter-spacing:-.068em !important;
  text-decoration:none !important;
}
body.page-plan-du-site .rb-sitemap-section .block-head p{
  margin:0 !important;
  max-width:64ch !important;
  color:var(--text) !important;
  -webkit-text-fill-color:var(--text) !important;
  font:500 1rem/1.65 var(--body) !important;
}
body.page-plan-du-site .rb-sitemap-section .cards-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  padding:clamp(1.2rem,2.6vw,2rem) !important;
}
body.page-plan-du-site .rb-sitemap-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:16px !important;
  align-items:center !important;
  min-height:86px !important;
  padding:20px 22px !important;
  border:1px solid rgba(17,16,14,.11) !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.44) !important;
  box-shadow:0 14px 34px rgba(17,16,14,.045) !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  text-decoration:none !important;
}
body.page-plan-du-site .rb-sitemap-card:hover{
  border-color:rgba(200,80,26,.36) !important;
  background:rgba(255,255,255,.68) !important;
  transform:translateY(-1px) !important;
}
body.page-plan-du-site .rb-sitemap-card strong{
  display:block !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  font-family:var(--title) !important;
  font-size:clamp(1.1rem,1.55vw,1.42rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.048em !important;
  text-decoration:none !important;
}
body.page-plan-du-site .rb-sitemap-card span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:#17110E !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font:800 .68rem/1 var(--body) !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
body.page-plan-du-site .rb-sitemap-card span::after{
  content:' →' !important;
  margin-left:6px !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Pages légales */
body.page-mentions-legales .rb-inner-panel,
body.page-politique-de-confidentialite .rb-inner-panel{
  min-height:260px !important;
}
body.page-mentions-legales .rb-inner-content,
body.page-politique-de-confidentialite .rb-inner-content{
  width:min(calc(100% - 40px),980px) !important;
}
body.page-mentions-legales .rb-inner-content .article,
body.page-politique-de-confidentialite .rb-inner-content .article{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}
body.page-mentions-legales .rb-inner-content .article-wrap,
body.page-politique-de-confidentialite .rb-inner-content .article-wrap{
  width:100% !important;
  max-width:980px !important;
  margin:0 auto !important;
  padding:clamp(1.5rem,3.4vw,3rem) !important;
  border:1px solid rgba(17,16,14,.12) !important;
  border-radius:34px !important;
  background:rgba(255,249,239,.78) !important;
  box-shadow:0 16px 44px rgba(17,16,14,.06) !important;
}
body.page-mentions-legales .rb-inner-content .article-meta,
body.page-politique-de-confidentialite .rb-inner-content .article-meta{
  margin:0 0 14px !important;
}
body.page-mentions-legales .rb-inner-content .article h1,
body.page-politique-de-confidentialite .rb-inner-content .article h1{
  display:none !important;
}
body.page-mentions-legales .rb-inner-content .article h2,
body.page-politique-de-confidentialite .rb-inner-content .article h2{
  margin:clamp(1.8rem,3vw,2.6rem) 0 .7rem !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  font-family:var(--title) !important;
  font-size:clamp(1.55rem,2.8vw,2.35rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.055em !important;
}
body.page-mentions-legales .rb-inner-content .article p,
body.page-politique-de-confidentialite .rb-inner-content .article p,
body.page-politique-de-confidentialite .rb-inner-content .article li{
  max-width:78ch !important;
  margin:0 0 1rem !important;
  color:var(--text) !important;
  -webkit-text-fill-color:var(--text) !important;
  font:500 1rem/1.72 var(--body) !important;
}
body.page-politique-de-confidentialite .rb-inner-content .article ul{
  margin:0 0 1.2rem !important;
  padding-left:1.2rem !important;
}
body.page-mentions-legales .rb-inner-content .article a,
body.page-politique-de-confidentialite .rb-inner-content .article a{
  color:var(--orange) !important;
  -webkit-text-fill-color:var(--orange) !important;
  font-weight:800 !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:4px !important;
}

@media(max-width:860px){
  body.rb-utility-page .rb-inner-hero__grid,
  body.page-plan-du-site .rb-sitemap-section .block-head,
  body.page-plan-du-site .rb-sitemap-section .cards-grid{
    grid-template-columns:1fr !important;
  }
  body.rb-utility-page .rb-inner-content,
  body.page-plan-du-site .rb-sitemap-content{
    width:min(calc(100% - 28px),1120px) !important;
  }
  body.page-plan-du-site .rb-sitemap-card{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
  body.page-plan-du-site .rb-sitemap-card span{
    width:max-content !important;
  }
  body.page-mentions-legales .rb-inner-content,
  body.page-politique-de-confidentialite .rb-inner-content{
    width:min(calc(100% - 28px),980px) !important;
  }
  body.page-mentions-legales .rb-inner-content .article-wrap,
  body.page-politique-de-confidentialite .rb-inner-content .article-wrap{
    padding:22px !important;
    border-radius:24px !important;
  }
}
