/* Retours d'envoi intégrés au thème existant, limités aux formulaires de contact. */
[data-contact-form][hidden], [data-contact-success][hidden], [data-contact-error][hidden] { display: none !important; }
.lis-contact-feedback {
    margin-top: 20px;
    padding: 20px 22px;
    border: 1px solid #b9dfcb;
    border-radius: 18px;
    background: #f0faf5;
    color: #195d3c;
    text-align: left;
    overflow-wrap: anywhere;
}
.lis-contact-feedback h3 { margin: 0 0 8px; color: #195d3c; font-size: 1.15rem; }
.lis-contact-feedback p { margin: 0; color: #285c44; font-size: 1rem; line-height: 1.6; }
.lis-contact-feedback .lis-contact-reference { margin-top: 10px; font-size: .8125rem; }
.lis-contact-error { margin: 16px 0; padding: 15px 18px; border: 1px solid #edc0b7; border-radius: 14px; background: #fff3f0; color: #872d20; font-size: 1rem; line-height: 1.5; }
.lis-contact-feedback:focus-visible, .lis-contact-error:focus-visible { outline: 3px solid #0071e3; outline-offset: 4px; }
[data-contact-form] .lis-contact-privacy { margin: 16px 0; color: #526477; font-size: .875rem; line-height: 1.6; text-align: left; }
[data-contact-form] button:disabled { opacity: .65; cursor: wait; }
/* Les choix restent accessibles au clavier avec le style de pastille existant. */
[data-contact-form] .radio-group input[type="radio"] { display: block; position: absolute; width: 1px; height: 1px; padding: 0; border: 0; overflow: hidden; clip-path: inset(50%); }
[data-contact-form] .radio-group input[type="radio"]:focus-visible + label { outline: 3px solid #0071e3; outline-offset: 3px; }
