/* ══════════════════════════════════════════
   ICE ARTS — PAGES LÉGALES
   Reprend les tokens de marque du site principal.
══════════════════════════════════════════ */
:root {
  --void:   #060606;
  --chalk:  #F2F0EB;
  --ice:    #C2D4E2;
  --dust:   #7A7A76;
  --fg-rgb: 242,240,235;
  --bg-rgb: 6,6,6;
  --line:   rgba(var(--fg-rgb),0.10);
  --line2:  rgba(var(--fg-rgb),0.05);
  --bg:     var(--void);
  --fg:     var(--chalk);
  --fg-dim: var(--dust);
  --accent: var(--ice);
  --accent-ink: var(--void);
  --card:   rgba(var(--fg-rgb),0.03);
  color-scheme: dark;
}
html[data-theme="light"] {
  --void:   #F4F2ED;
  --chalk:  #14140F;
  --dust:   #6B6A64;
  --fg-rgb: 20,20,15;
  --bg-rgb: 244,242,237;
  --line:   rgba(20,20,15,0.14);
  --line2:  rgba(20,20,15,0.06);
  --bg:     #F4F2ED;
  --fg:     #14140F;
  --fg-dim: #6B6A64;
  --accent: #2F6489;
  --accent-ink: #F4F2ED;
  --card:   rgba(20,20,15,0.03);
  color-scheme: light;
}
html.theme-anim, html.theme-anim * { transition: background-color .45s ease, color .45s ease, border-color .45s ease; }

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  background: var(--bg);
  color: var(--fg);
  font-family: 'DM Sans', sans-serif;
  font-weight: 300;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}

/* ── NAV ── */
.nav {
  position: sticky; top: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 40px;
  background: rgba(var(--bg-rgb),0.86);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line);
}
.nav-logo {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 22px; letter-spacing: 0.14em;
  color: var(--fg); text-decoration: none;
}
.nav-logo em { color: var(--ice); font-style: normal; }
html[data-theme="light"] .nav-logo em { color: var(--accent); }
.nav-right { display:flex; align-items:center; gap:14px; }
.theme-toggle {
  width:34px; height:34px; border-radius:50%;
  border:1px solid var(--line); background:transparent;
  color:var(--fg); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
}
.theme-toggle svg { width:15px; height:15px; }
html[data-theme="light"] .ic-moon { display:none; }
html:not([data-theme="light"]) .ic-sun { display:none; }
.nav-back {
  font-family:'DM Mono', monospace; font-size:8.5px;
  letter-spacing:0.28em; text-transform:uppercase;
  color:var(--fg); text-decoration:none;
  border:1px solid var(--fg); padding:9px 18px;
  transition: background .25s, color .25s;
}
.nav-back:hover { background:var(--accent); color:var(--accent-ink); border-color:var(--accent); }

/* ── EN-TÊTE ── */
.head { padding: 90px 40px 54px; max-width: 900px; margin: 0 auto; }
.eyebrow {
  font-family:'DM Mono', monospace; font-size:9px;
  letter-spacing:0.42em; text-transform:uppercase;
  color: var(--accent); display:flex; align-items:center; gap:14px;
}
.eyebrow::after { content:''; height:1px; width:56px; background:var(--line); }
.h1 {
  font-family:'Bebas Neue', sans-serif;
  font-size: clamp(38px, 7vw, 68px);
  line-height: 0.95; letter-spacing: 0.02em;
  margin: 20px 0 16px;
}
.updated {
  font-family:'DM Mono', monospace; font-size:9.5px;
  letter-spacing:0.2em; text-transform:uppercase; color: var(--fg-dim);
}

/* ── CORPS ── */
.wrap { max-width: 900px; margin: 0 auto; padding: 0 40px 110px; }
.art { padding: 34px 0; border-top: 1px solid var(--line); }
.art-num {
  font-family:'DM Mono', monospace; font-size:9px;
  letter-spacing:0.3em; color: var(--accent); display:block; margin-bottom:10px;
}
.art h2 {
  font-family:'Bebas Neue', sans-serif;
  font-size: 24px; letter-spacing:0.05em; font-weight:400;
  margin-bottom: 14px;
}
.art h3 {
  font-family:'DM Mono', monospace; font-size:10px;
  letter-spacing:0.24em; text-transform:uppercase;
  color: var(--fg-dim); margin: 22px 0 8px;
}
.art p { font-size: 15px; color: var(--fg-dim); margin-bottom: 12px; }
.art p strong { color: var(--fg); font-weight: 400; }
.art a { color: var(--accent); text-decoration: none; border-bottom: 1px solid transparent; }
.art a:hover { border-bottom-color: var(--accent); }
.art ul { list-style:none; margin: 6px 0 14px; }
.art li {
  font-size: 15px; color: var(--fg-dim);
  padding-left: 20px; position: relative; margin-bottom: 7px;
}
.art li::before {
  content:''; position:absolute; left:0; top:11px;
  width:6px; height:1px; background: var(--accent);
}
.art li b { color: var(--fg); font-weight: 400; }

/* fiche d'identité */
.card {
  border:1px solid var(--line); background: var(--card);
  padding: 26px 28px; margin: 6px 0 4px;
}
.row { display:flex; gap:18px; padding:9px 0; border-bottom:1px solid var(--line2); flex-wrap:wrap; }
.row:last-child { border-bottom:0; }
.row dt {
  font-family:'DM Mono', monospace; font-size:9px;
  letter-spacing:0.22em; text-transform:uppercase;
  color: var(--fg-dim); width: 190px; flex-shrink:0; padding-top:3px;
}
.row dd { font-size:14.5px; color: var(--fg); flex:1; min-width:200px; }

/* à compléter */
.todo {
  display:inline-block; font-family:'DM Mono', monospace;
  font-size:11px; letter-spacing:0.06em;
  background: rgba(200,120,40,0.16); color:#E0913F;
  border:1px dashed rgba(200,120,40,0.55); padding:2px 8px;
}
html[data-theme="light"] .todo { background: rgba(160,90,20,0.10); color:#9A5C12; }

/* ── FOOTER ── */
.foot {
  border-top:1px solid var(--line); padding: 30px 40px;
  display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap;
  font-family:'DM Mono', monospace; font-size:8px;
  letter-spacing:0.28em; text-transform:uppercase; color: var(--fg-dim);
}
.foot a { color: var(--fg-dim); text-decoration:none; margin-left:22px; }
.foot a:hover { color: var(--accent); }

@media (max-width: 720px) {
  .nav { padding: 14px 20px; }
  .head { padding: 60px 20px 40px; }
  .wrap { padding: 0 20px 80px; }
  .row dt { width: 100%; }
  .foot { padding: 26px 20px; flex-direction: column; }
  .foot a { margin: 0 18px 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  html, html * { transition: none !important; animation: none !important; scroll-behavior: auto; }
}
