/* Plan du site – style premium (v24) */
.sitemap{ background:#07090d; color:rgba(255,255,255,.9); }
.sitemap a{ color:inherit; }

.sitemap-hero{ position:relative; padding:56px 0 18px; overflow:hidden; }
.sitemap-hero::before{
  content:""; position:absolute; inset:-60px -60px auto -60px; height:340px;
  background:
    radial-gradient(900px 300px at 18% 8%, rgba(255,45,45,.20), rgba(255,45,45,0) 62%),
    radial-gradient(820px 280px at 72% 4%, rgba(255,255,255,.09), rgba(255,255,255,0) 58%);
  pointer-events:none;
}
.sitemap-hero__inner{ max-width:1180px; margin:0 auto; padding:0 18px; display:grid; grid-template-columns:1.15fr .85fr; gap:18px; align-items:start; }
@media (max-width:980px){ .sitemap-hero__inner{ grid-template-columns:1fr; } }

.sitemap-cta{ display:flex; gap:10px; flex-wrap:wrap; margin:0 0 14px; }

.sitemap-panel{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  padding:16px;
  box-shadow:0 30px 90px rgba(0,0,0,.65);
}
.sitemap-panel h2{ margin:0 0 10px; font-size:1.05rem; }
.sitemap-panel ul{ margin:0 0 14px; padding-left:18px; color:rgba(255,255,255,.70); line-height:1.7; }
.sitemap-panel__actions{ display:flex; gap:10px; flex-wrap:wrap; }

.sitemap-section{ padding:18px 0 32px; }
.sitemap-head{ max-width:1180px; margin:0 auto; padding:0 18px; }
.sitemap-head h2{ margin:0 0 8px; font-size:1.55rem; }
.sitemap-head p{ margin:0; color:rgba(255,255,255,.68); line-height:1.6; }

.sitemap-grid{ max-width:1180px; margin:16px auto 0; padding:0 18px; display:grid; grid-template-columns:repeat(3, 1fr); gap:14px; }
@media (max-width:980px){ .sitemap-grid{ grid-template-columns:1fr; } }

.sitemap-card{
  display:block; text-decoration:none;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  padding:16px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;
  box-shadow:0 22px 70px rgba(0,0,0,.55);
}
.sitemap-card h3{ margin:0 0 8px; font-size:1.05rem; }
.sitemap-card p{ margin:0; color:rgba(255,255,255,.70); line-height:1.6; }
@media (hover:hover){
  .sitemap-card:hover{ transform:translateY(-6px); border-color:rgba(255,45,45,.28); box-shadow:0 28px 90px rgba(0,0,0,.62); filter:brightness(1.03); }
}

.sitemap-lists{ max-width:1180px; margin:16px auto 0; padding:0 18px; display:grid; grid-template-columns:repeat(3, 1fr); gap:14px; }
@media (max-width:980px){ .sitemap-lists{ grid-template-columns:1fr; } }

.sitemap-list{
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  padding:16px;
}
.sitemap-list h3{ margin:0 0 10px; font-size:1.02rem; }
.sitemap-list ul{ margin:0; padding-left:18px; color:rgba(255,255,255,.72); line-height:1.8; }
.sitemap-list a{ color:rgba(255,255,255,.82); text-decoration:none; }
.sitemap-list a:hover{ text-decoration:underline; }

.sitemap-section--fineprint{ padding-top: 0; }
.fineprint{ max-width:1180px; margin:0 auto; padding:0 18px; color:rgba(255,255,255,.72); line-height:1.7; }
.fineprint .muted{ color:rgba(255,255,255,.55); margin-top:6px; }
