/* Feuille de style commune aux pages légales — Ady Web Concept */
:root{
  --ink:#221A17; --ink-2:#4A3F3A; --muted:#625650; --line:#E8DFD4;
  --tint:#FAF6F0; --paper:#FFFFFF;
  --brand:#6B1E2E; --brand-2:#8C2E40; --brand-deep:#4A1420; --brand-soft:#F7F0EC;
  --ocre:#B8893A; --ocre-soft:#F3E8D3;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:'Plus Jakarta Sans','Helvetica Neue',Arial,sans-serif;
  color:var(--ink);background:var(--paper);line-height:1.7;font-size:16px;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Archivo','Plus Jakarta Sans',sans-serif;line-height:1.2;letter-spacing:-.02em}
a{color:var(--brand)}
a:focus-visible,button:focus-visible{outline:3px solid var(--ocre);outline-offset:2px}
.wrap{max-width:820px;margin:0 auto;padding:0 24px}

header.site{background:var(--brand-deep);color:#F7F0EC;padding:20px 0}
header.site .row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
header.site a.retour{
  margin-left:auto;color:#E8D5C9;text-decoration:none;font-weight:700;font-size:14px;
  border:1px solid rgba(255,255,255,.25);padding:8px 16px;border-radius:999px;
}
header.site a.retour:hover{background:rgba(255,255,255,.1)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.brand svg{width:34px;height:34px;flex:none}
.brand b{display:block;font-family:'Archivo',sans-serif;font-size:17px;font-weight:800;color:#fff}
.brand i{display:block;font-style:normal;font-size:9px;font-weight:700;letter-spacing:.18em;color:#BFA9A0;margin-top:2px}

main{padding:56px 0 72px}
h1{font-size:clamp(28px,5vw,40px);font-weight:900}
.maj{color:var(--muted);font-size:14px;margin-top:10px}
h2{font-size:21px;font-weight:800;margin-top:44px;padding-top:22px;border-top:1px solid var(--line)}
h3{font-size:16.5px;font-weight:800;margin-top:26px}
p,ul,ol,table{margin-top:14px}
ul,ol{padding-left:22px}
li{margin-top:7px}
table{width:100%;border-collapse:collapse;font-size:15px;table-layout:fixed}
  /* les adresses email et les URL ne doivent jamais elargir le tableau sur petit ecran */
  th,td{overflow-wrap:anywhere;word-break:break-word;hyphens:auto}
  @media(max-width:420px){th,td{padding:9px 8px;font-size:14px}th{width:38%}}
th,td{text-align:left;padding:11px 12px;border:1px solid var(--line);vertical-align:top}
th{background:var(--tint);font-weight:700;width:34%}
.encadre{
  background:var(--brand-soft);border:1px solid #EBCFD3;border-left:4px solid var(--brand-2);
  border-radius:12px;padding:18px 22px;margin-top:22px;
}
.encadre.attention{background:var(--ocre-soft);border-color:#E9D5AE;border-left-color:var(--ocre)}
.encadre p:first-child{margin-top:0}
.a-remplir{
  background:var(--ocre-soft);color:#8A5510;font-weight:700;
  padding:2px 8px;border-radius:6px;border:1px dashed var(--ocre);
}
.sommaire{background:var(--tint);border:1px solid var(--line);border-radius:14px;padding:20px 24px;margin-top:28px}
.sommaire p{margin:0 0 8px;font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.sommaire ol{margin:0;padding-left:20px;font-size:15px}

footer{background:var(--brand-deep);color:#BFA9A0;padding:36px 0;font-size:13.5px;margin-top:60px}
footer .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px}
footer strong{color:#fff}
footer a{color:#E8D5C9}
footer nav{display:flex;gap:16px;flex-wrap:wrap}

@media print{header.site,footer nav{display:none}body{font-size:12pt}}
