:root{
  --sage:#7A9E7E; --sage-l:#C8DBC9; --sage-p:#EBF3EB; --sage-xl:#F4F9F4;
  --rose-p:#F8EDEC; --lin-l:#E8DDD0; --lin-p:#F7F3EE;
  --gold:#D4A830; --dark:#2C3A2E; --dark2:#1A2210;
  --text:#3A3A3A; --text-soft:#5A4A3A; --radius:12px;
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--sage-xl); color:var(--text);
  font-family:'Inter',system-ui,sans-serif; font-weight:300;
  line-height:1.75; -webkit-font-smoothing:antialiased;
}

/* En-tête */
.lg-head{
  background:var(--dark); padding:14px 20px;
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:10px; position:sticky; top:0; z-index:10;
}
.lg-back{color:rgba(255,255,255,.85); text-decoration:none; font-size:13px}
.lg-back:hover{color:#fff; text-decoration:underline}
.lg-logo{font-family:'Cormorant Garamond',serif; font-size:19px; color:var(--gold); letter-spacing:.05em}
.lg-logo span{font-size:14px; color:rgba(255,255,255,.65); font-style:italic}

/* Contenu */
.lg-wrap{max-width:820px; margin:0 auto; padding:34px 20px 60px}
h1{
  font-family:'Cormorant Garamond',serif; font-weight:400;
  font-size:clamp(28px,6vw,40px); color:var(--dark); margin:0 0 6px; line-height:1.2;
}
.lg-date{font-size:12.5px; color:var(--text-soft); margin:0 0 26px}
h2{
  font-family:'Cormorant Garamond',serif; font-weight:500;
  font-size:clamp(20px,4vw,25px); color:var(--dark);
  margin:36px 0 12px; padding-bottom:7px; border-bottom:2px solid var(--sage-l);
}
h3{font-size:15px; font-weight:500; color:var(--dark); margin:22px 0 8px}
p{margin:0 0 13px; font-size:14.5px}
ul{margin:0 0 13px; padding-left:20px; font-size:14.5px}
li{margin-bottom:7px}
a{color:#4A7C50; text-decoration:underline; text-underline-offset:2px}
a:hover{color:var(--dark)}
strong{font-weight:500; color:var(--dark)}

/* Encadrés */
.lg-note{
  background:var(--sage-p); border-left:4px solid var(--sage);
  border-radius:0 var(--radius) var(--radius) 0;
  padding:14px 16px; margin:0 0 26px; font-size:14px;
}
.lg-warn{
  background:#FDF6E6; border-left:4px solid var(--gold);
  border-radius:0 var(--radius) var(--radius) 0;
  padding:16px 18px; margin:16px 0 22px; font-size:14px; color:var(--text);
}
.lg-key{
  background:#fff; border:1px solid var(--sage-l);
  border-radius:var(--radius); padding:16px 18px; margin:16px 0;
}

/* Tableaux */
.lg-table{
  width:100%; border-collapse:collapse; background:#fff;
  border:1px solid var(--lin-l); border-radius:var(--radius);
  overflow:hidden; margin:14px 0 22px; font-size:14px;
}
.lg-table th,.lg-table td{
  text-align:left; padding:11px 14px; border-bottom:1px solid var(--lin-l); vertical-align:top;
}
.lg-table tr:last-child th,.lg-table tr:last-child td{border-bottom:none}
.lg-table th{
  font-weight:500; color:var(--dark); background:var(--lin-p);
  width:38%; font-size:13.5px;
}
@media (max-width:560px){
  .lg-table th,.lg-table td{display:block; width:100%}
  .lg-table th{border-bottom:none; padding-bottom:2px}
  .lg-table td{padding-top:2px}
}

/* Liens entre pages légales */
.lg-links{
  display:flex; flex-wrap:wrap; gap:9px;
  margin:38px 0 0; padding-top:22px; border-top:1px solid var(--sage-l);
}
.lg-links a{
  background:#fff; border:1px solid var(--sage-l); border-radius:20px;
  padding:7px 14px; font-size:12.5px; text-decoration:none; color:var(--dark);
  transition:background .18s ease, transform .18s ease;
}
.lg-links a:hover{background:var(--sage-p); transform:translateY(-2px)}

/* Pied de page */
.lg-foot{
  background:var(--dark2); color:rgba(255,255,255,.62);
  padding:26px 20px; text-align:center; font-size:12px; line-height:1.8;
}
.lg-foot div{
  font-family:'Cormorant Garamond',serif; font-size:17px;
  color:var(--gold); margin-bottom:8px; letter-spacing:.05em;
}
.lg-foot p{margin:3px 0; font-size:12px}
.lg-foot a{color:rgba(255,255,255,.75)}

@media (prefers-reduced-motion:reduce){
  .lg-links a{transition:none}
  .lg-links a:hover{transform:none}
}
