/* Feuille commune aux pages secondaires (mentions, confidentialité, 404).
   La page d'accueil et /merci gardent leur CSS en ligne : ce sont elles qui
   doivent s'afficher sans aucune requête bloquante. */
:root{
  --nuit:#222E3A; --nuit-2:#2C3845; --nuit-3:#19232C;
  --rose:#FF6F80; --rose-2:#F0576E;
  --rose-pale:#FCDDE1; --rose-brume:#FDF3F4;
  --gris:#F4F5F9; --gris-2:#EBECEF; --white:#fff;
  --rouge:#A52539;
  --ink:#333333; --ink-2:#4A5260; --ink-3:#5B6472;
  --line:rgba(34,46,58,.11); --r-md:12px; --r-sm:8px;
  --magenta:#CE0054; --magenta-2:#A3003F;
  --font:'Archivo', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
}
@font-face{font-family:'Archivo';src:url(fonts/archivo-latin.woff2) format('woff2');font-weight:400 700;font-stretch:85% 115%;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Archivo';src:url(fonts/archivo-latin-ext.woff2) format('woff2');font-weight:400 700;font-stretch:85% 115%;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--gris);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
.em{color:var(--rose)}
.wrap{width:min(100% - 36px, 780px);margin-inline:auto}
a{color:var(--magenta)}
.hero a,.ftr a{color:inherit}
a:hover{text-decoration:none}
h1,h2,h3{margin:0;line-height:1.12;letter-spacing:-.032em;font-weight:700;font-stretch:110%}
p,ul,ol{margin:0}
:where(a,button):focus-visible{outline:3px solid var(--magenta-2);outline-offset:2px;border-radius:6px}
.hdr :focus-visible,.hero :focus-visible,.ftr :focus-visible{outline-color:var(--rose)}

.hdr{background:var(--nuit);padding:20px 0}
.hdr img{width:250px;height:auto;display:block}
.hero{background:var(--nuit);color:#fff;padding:8px 0 clamp(36px,5vw,56px)}
.hero h1{font-size:clamp(28px,4.4vw,42px)}
.hero h1 .em{color:var(--rose)}
.hero p{margin-top:14px;color:rgba(255,255,255,.78);font-size:15.5px}

main{padding:clamp(34px,5vw,56px) 0 clamp(50px,7vw,80px)}
.doc{background:var(--white);border-radius:var(--r-md);padding:clamp(24px,4vw,44px);box-shadow:0 10px 26px -14px rgba(34,46,58,.28),0 0 0 1px rgba(34,46,58,.07)}
.doc h2{font-size:21px;margin-top:38px}
.doc h2:first-of-type{margin-top:0}
.doc h3{font-size:16.5px;margin-top:24px}
.doc p{margin-top:12px;color:var(--ink-2)}
.doc ul{margin-top:12px;padding-left:0;list-style:none;display:grid;gap:9px}
.doc ul li{display:flex;gap:11px;color:var(--ink-2);font-size:16px;line-height:1.55;min-width:0}
.doc li > *{min-width:0}
.doc code{overflow-wrap:anywhere;word-break:break-word;font-size:.92em;
  background:var(--gris-2);padding:1px 5px;border-radius:3px}
.doc ul li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--rose);margin-top:11px}
.doc dl{margin:12px 0 0;display:grid;gap:10px}
.doc dt{font-weight:700;font-size:15px;color:var(--ink)}
.doc dd{margin:0 0 6px;color:var(--ink-2);font-size:16px}
.maj{font-size:14px;color:var(--ink-3);margin-top:30px;padding-top:18px;border-top:1px solid var(--line)}

/* Les blocs que le client doit compléter sautent aux yeux : on ne met pas en
   ligne un document légal avec des crochets oubliés dedans. */
.todo{margin-top:14px;padding:15px 17px;border-radius:var(--r-sm);background:#FDEEF0;
  box-shadow:inset 0 0 0 1.5px rgba(165,37,57,.28);font-size:15px;color:var(--rouge)}
.todo b{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;cursor:pointer;
  font-weight:700;font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;font-stretch:100%;
  padding:17px 30px;border-radius:0;text-decoration:none;
  background:var(--magenta);color:#fff;transition:background .16s}
.btn:hover{background:var(--magenta-2)}

.ftr{background:var(--nuit-3);color:rgba(255,255,255,.6);padding:26px 0;font-size:13.5px}
.ftr .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
.ftr a{color:rgba(255,255,255,.75);text-decoration:none}
.ftr a:hover{color:#fff;text-decoration:underline}

/* 404 */
.e404{text-align:center;padding:clamp(50px,9vw,110px) 0}
.e404 .code{font-stretch:115%;font-weight:700;font-style:italic;font-size:clamp(80px,16vw,150px);line-height:.9;color:var(--nuit);opacity:.17}
.e404 h1{font-size:clamp(27px,4.2vw,40px);margin-top:-14px}
.e404 p{margin-top:16px;color:var(--ink-2);font-size:17.5px}
.e404 .btn{margin-top:28px}
