/* Retraite Maurice — pages de texte (gabarits/simple.html), en plus de theme.css */
.si .ph-soft{padding-bottom:30px}
.si .ph-soft h1{font-size:clamp(40px,5vw,68px)}
.si .lead{max-width:720px;margin:0 auto}
.si-maj{margin-top:16px;font-size:13.5px;color:#6d86a0}
.si-corps{display:grid;grid-template-columns:240px minmax(0,1fr);gap:60px;align-items:start;padding-bottom:100px}
.si-sommaire{position:sticky;top:100px;padding:20px 22px;border-radius:22px;background:#fff;border:1px solid var(--line)}
.si-sommaire b{display:block;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#6d86a0;margin-bottom:10px}
.si-sommaire ol{margin:0;padding-left:18px;display:grid;gap:8px;font-size:14.5px;color:var(--muted)}
.si-sommaire a:hover{color:var(--blue)}
.si-texte{max-width:780px}
.si-texte section{scroll-margin-top:100px;padding:6px 0 26px;border-bottom:1px solid var(--line);margin-bottom:26px;animation:si-monte .7s cubic-bezier(.2,.8,.2,1) both}
.si-texte section:last-child{border:0}
.si-texte h2{font-size:clamp(23px,2.2vw,29px);font-weight:700;letter-spacing:-.02em;margin-bottom:12px}
.si-texte p,.si-texte li{font-size:16.5px;line-height:1.7;color:var(--muted)}
.si-texte p+p{margin-top:12px}
.si-texte ul{margin:10px 0 0;padding-left:22px;display:grid;gap:6px}
.si-texte strong{color:var(--navy-d)}
.si-texte a{color:var(--blue);text-decoration:underline}
.si-tab{overflow-x:auto;margin-top:16px;border-radius:18px;border:1px solid var(--line);background:#fff}
.si-tab table{width:100%;border-collapse:collapse;font-size:14.5px}
.si-tab th{text-align:left;padding:12px 14px;background:var(--ice);color:var(--navy-d);font-weight:600;white-space:nowrap}
.si-tab td{padding:12px 14px;border-top:1px solid var(--line);vertical-align:top;color:var(--muted)}
.si-tab td p{font-size:14.5px;line-height:1.5;margin:0}
.si-tab td:first-child{color:var(--navy-d);font-weight:600}
.si-tab code{font-size:13px;background:var(--ice);padding:2px 6px;border-radius:6px;color:var(--navy-d)}
.si-choix{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 22px;margin-bottom:34px;border-radius:22px;background:linear-gradient(135deg,#e9fbfa,var(--ice))}
.si-choix b{display:block;font-size:16px}.si-choix span{font-size:14.5px;color:var(--muted)}
@keyframes si-monte{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:980px){.si-corps{grid-template-columns:minmax(0,1fr);gap:24px}.si-sommaire{position:static}}
@media(prefers-reduced-motion:reduce){.si-texte section{animation:none}}
.si-editeur{display:block;margin:6px 0 4px;max-width:100%;height:auto}

/* ---- plan du site ---- */
.pl-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;padding:10px 40px 90px}
.pl-c{padding:24px 26px;border-radius:22px;background:#fff;border:1px solid rgba(15,58,107,.08)}
.pl-c h2{font-size:18px;font-weight:700;color:var(--navy-d);margin-bottom:12px}
.pl-c h2 a:hover{color:var(--blue)}
.pl-c ul{list-style:none;display:grid;gap:7px}
.pl-c li a{font-size:15px;color:#41607f;line-height:1.45}
.pl-c li a:hover{color:var(--blue);text-decoration:underline}

/* ---- page 404 : fond lagon plein écran, chiffres qui flottent ---- */
.er{position:relative;isolation:isolate;overflow:hidden;min-height:78vh;display:grid;place-items:center;padding:140px 0 80px;color:#fff;text-align:center}
.er-in{position:relative;z-index:2}
.er-code{display:flex;justify-content:center;gap:.06em;font-size:clamp(110px,18vw,220px);font-weight:800;letter-spacing:-.04em;line-height:1;color:rgba(255,255,255,.92);text-shadow:0 20px 60px rgba(4,30,60,.35)}
.er-code span{display:inline-block;animation:erFlotte 4.5s ease-in-out infinite}
.er-code span:nth-child(2){animation-delay:-1.5s;color:#fde68a}.er-code span:nth-child(3){animation-delay:-3s}
@keyframes erFlotte{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-14px) rotate(2deg)}}
.er h1{font-size:clamp(30px,3.6vw,48px);font-weight:700;letter-spacing:-.03em;margin:14px 0 12px}
.er h1 .serif{color:#fde68a}
.er p{max-width:560px;margin:0 auto;font-size:18px;line-height:1.6;color:#e2f4fb}
.er-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.er-liens{padding:60px 40px 90px}
.er-liens h2{font-size:24px;font-weight:700;color:var(--navy-d);margin-bottom:18px;text-align:center}
.er-g{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.er-g a{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:18px;background:#fff;border:1px solid rgba(15,58,107,.08);color:var(--navy-d);transition:transform .3s,border-color .3s}
.er-g a:hover{transform:translateY(-3px);border-color:var(--lagoon)}
.er-g span{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--ice);color:var(--blue)}
@media(max-width:980px){.er-g{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.pl-g,.er-liens{padding-left:16px;padding-right:16px}.er-g{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.er-code span{animation:none}}
