/* Newsletter — pages publiques, bloc Wagtail et formulaire du pied de page */
.nl-public .nl-titre{font-weight:900;font-size:1.9rem;line-height:1.2;color:#003366;margin:.4rem 0 1rem}
.nl-public p{margin:0 0 1rem;line-height:1.6}
.nl-public .nl-note,.nl-public .nl-mentions{font-size:.85rem;color:#69788c}
.nl-public .nl-mentions{margin-top:2rem;border-top:1px solid rgba(0,51,102,.1);padding-top:1rem}
.nl-public .nl-mentions a,.nl-public a{color:#003366}
.nl-form{display:grid;gap:1rem;margin:1.2rem 0}
.nl-form .nl-case label{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;color:#122033;font-size:.95rem}
.nl-form .nl-case input{margin-top:.25rem;width:1.1rem;height:1.1rem;flex:none}
.nl-err{color:#b3261e;font-weight:700;font-size:.85rem;margin:.3rem 0 0!important}
.nl-erreur input,.nl-erreur select{border-color:#b3261e!important}
.nl-lien{background:none;border:0;color:#003366;text-decoration:underline;cursor:pointer;padding:0;font:inherit}
.nl-piege{position:absolute!important;left:-9999px!important;top:auto;width:1px;height:1px;overflow:hidden}
.nl-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* formulaire compact */
.nl-compact{display:grid;gap:.6rem;max-width:34rem}
.nl-compact-ligne{display:flex;gap:.5rem;flex-wrap:wrap}
.nl-compact input[type=email]{flex:1 1 14rem;min-width:0;border:1px solid rgba(0,51,102,.18);border-radius:999px;padding:.7rem 1rem;background:#fff;color:#122033;font:inherit}
.nl-compact button{border:0;border-radius:999px;padding:.7rem 1.3rem;background:#3dbe50;color:#061426;font-weight:900;cursor:pointer;white-space:nowrap}
.nl-compact button:hover{filter:brightness(1.05)}
.nl-compact .nl-compact-case{display:flex;gap:.5rem;align-items:flex-start;font-size:.8rem;line-height:1.4;font-weight:400;margin:0;color:inherit}
.nl-compact .nl-compact-case input{margin-top:.15rem;flex:none}
.nl-compact a{color:inherit;text-decoration:underline}
.nl-pied{padding:0 0 1.75rem;margin:0 0 1.75rem;border-bottom:1px solid rgba(255,255,255,.08)}
.nl-pied-int{display:flex;flex-wrap:wrap;gap:1.2rem 3rem;align-items:center;justify-content:space-between}
.nl-pied strong{display:block;color:#fff;font-weight:900;font-size:1.05rem;margin-bottom:.2rem}
.nl-pied p{margin:0;font-size:.9rem}
.nl-pied .nl-compact input[type=email]{border-color:rgba(255,255,255,.15)}
.nl-bloc{background:#fff;border:1px solid rgba(0,51,102,.1);border-radius:1.5rem;padding:2rem;display:grid;gap:1rem}
.nl-bloc h2{font-weight:900;font-size:1.6rem;color:#003366;margin:0}
.nl-bloc p{margin:0;color:#69788c;line-height:1.6}
.nl-bloc .nl-compact{max-width:none}
.nl-bloc .nl-compact .nl-compact-case{color:#122033}
