/* Feuille commune aux pages légales — même charte, mise en page de lecture. */
:root{
  --espresso:#3D3221;--espresso-deep:#241D14;--sand:#F3ECE0;--cream:#FAF5EC;
  --ivory:#FFFDF8;--ink:#2C2419;--brass:#B08D57;--brass-ink:#856637;
  --brass-soft:#C7A877;--muted:#6E6150;--line:rgba(61,50,33,.16);
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:'Mulish',system-ui,sans-serif;color:var(--ink);background:var(--cream);
  line-height:1.7;-webkit-font-smoothing:antialiased;
}
a{color:var(--brass-ink);text-decoration:underline;text-underline-offset:2px}
a:hover{color:var(--espresso)}
a:focus-visible,button:focus-visible{outline:3px solid var(--brass-ink);outline-offset:3px}

.lhead{background:var(--espresso-deep);color:#fff;padding:26px 0}
.lhead .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.lhead .brand{display:flex;flex-direction:column;line-height:1;color:#fff;text-decoration:none}
.lhead .brand .name{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.4rem;letter-spacing:.04em;font-weight:500}
.lhead .brand .sub{font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;color:var(--brass-soft);margin-top:6px}
.lhead a.back{color:var(--brass-soft);font-size:.85rem;font-weight:600}

.wrap{max-width:780px;margin:0 auto;padding:0 28px}
main{padding:clamp(44px,7vw,84px) 0 80px}
h1{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;
  font-size:clamp(2.1rem,4.6vw,3rem);line-height:1.08;letter-spacing:-.01em;
  margin-bottom:10px;text-wrap:balance;
}
.updated{font-size:.8rem;color:var(--muted);font-style:italic;margin-bottom:40px}
h2{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:1.7rem;
  line-height:1.15;margin:44px 0 14px;padding-top:22px;border-top:1px solid var(--line);
  text-wrap:balance;
}
h2:first-of-type{border-top:none;padding-top:0}
h3{font-family:'Mulish',sans-serif;font-size:1rem;font-weight:700;margin:24px 0 8px}
p{margin-bottom:14px}
p,li{font-size:.98rem}
ul,ol{margin:0 0 16px 22px}
li{margin-bottom:7px}
strong{font-weight:700}

.card{
  background:var(--ivory);border:1px solid var(--line);border-radius:3px;
  padding:24px 26px;margin:20px 0;
}
dl{display:grid;grid-template-columns:190px 1fr;gap:10px 20px}
dt{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:700;padding-top:3px}
dd{font-size:.96rem}
@media(max-width:560px){dl{grid-template-columns:1fr;gap:2px 0}dd{margin-bottom:12px}}

table{width:100%;border-collapse:collapse;margin:18px 0;font-size:.92rem}
th{
  text-align:left;font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;
  color:var(--muted);font-weight:700;padding:0 12px 10px 0;border-bottom:1px solid var(--line);
}
td{padding:12px 12px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.tablewrap{overflow-x:auto}

.todo{
  background:#FBF0DE;border-left:3px solid #B07A1E;padding:16px 20px;margin:18px 0;
  font-size:.9rem;color:#5A4212;border-radius:0 3px 3px 0;
}
.todo b{display:block;margin-bottom:4px;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}

lfooter,.lfoot{display:block;background:var(--espresso-deep);color:rgba(250,245,236,.72);padding:30px 0;font-size:.8rem}
.lfoot a{color:rgba(250,245,236,.9)}
.lfoot .wrap{display:flex;gap:22px;flex-wrap:wrap;justify-content:space-between}
