/* Le même dessin de flèche, quel que soit le bouton ou sa police. */
.rvs-fleche{display:inline-block;flex:none;width:18px;height:12px;max-width:none;vertical-align:middle;margin-left:8px;transition:transform .24s ease;overflow:visible;color:inherit}
a:hover>.rvs-fleche,a:focus-visible>.rvs-fleche{transform:translateX(3px)}
/* Le script de tracé reprend ce filtre sur l'image SVG, sans toucher au masque. */
img.rvh-signature,img.rva-signature{filter:url(#rvs-signature-encre)}
@media(prefers-reduced-motion:reduce){.rvs-fleche{transition:none}a:hover>.rvs-fleche,a:focus-visible>.rvs-fleche{transform:none}}

/* Les exemples restent lisibles sur les champs blancs et crème. */
body input::placeholder,body textarea::placeholder{color:#6B6259!important;opacity:1!important;text-transform:none!important;letter-spacing:normal!important}
body .rvp .rvp-champ input[type="email"]::placeholder{color:#E4E8E1!important;opacity:1!important}
body .rvs-champ-exemple{display:block;flex-basis:100%;grid-column:1/-1;margin:6px 0 0;color:#6B6259;font:400 12px/1.55 Montserrat,sans-serif;letter-spacing:normal;text-transform:none;white-space:normal;overflow-wrap:anywhere;max-width:100%}
body label.rvs-champ-label{display:block;font:500 13px/1.5 Montserrat,sans-serif;color:#354535;margin:0 0 6px}
body .rvp .rvs-champ-exemple{color:#E4E8E1}
@media(max-width:860px){body input[placeholder],body textarea[placeholder]{font-size:16px!important}body textarea[placeholder]{white-space:pre-wrap;overflow-wrap:break-word}}

body .rvg-adresse .rvs-adresse-label{display:flex;flex-direction:column;gap:6px;margin:0 0 12px;font-size:13px;min-width:0}
body .rvg-adresse .rvs-adresse-label input{width:100%;box-sizing:border-box}
body .rvg-adresse-2>.rvs-adresse-label{flex:1;min-width:0}
@media(max-width:600px){
 body .rvp .rvp-champ{flex-direction:column;align-items:stretch}
 body .rvp .rvp-champ input[type="email"]{width:100%!important;box-sizing:border-box;flex:none}
 body .rvp .rvp-champ button[type="submit"]{min-height:44px;align-self:flex-start;padding:10px 20px!important}
}

body .rvbq-outils{flex-wrap:wrap}body .rvbq-outils>.rvs-champ-label{flex-basis:100%;margin-bottom:0}

/* Un seul trait pour les liens de navigation éditoriaux : aucun surlignage cumulé. */
body .rvc .rvh-tout a,body .rvc .rvh-lien-fin,body .rvtm .rvtm-plus a,body .rvc .rvh-carte a.rvge-bouton-ligne{background:none!important;box-shadow:none!important;text-decoration:none!important;border-bottom:1px solid #C9B48F;transition:color .22s ease,border-color .22s ease}
body .rvc .rvh-tout a:hover,body .rvc .rvh-lien-fin:hover,body .rvtm .rvtm-plus a:hover,body .rvc .rvh-carte a.rvge-bouton-ligne:hover{background:none!important;box-shadow:none!important;text-decoration:none!important;border-bottom-color:#806B48;color:#806B48!important}
body .rvtm .rvtm-plus a.rvs-avis-secondaire{border-bottom:1px solid #C9B48F;text-decoration:none!important}
@media(prefers-reduced-motion:reduce){body .rvc .rvh-tout a,body .rvc .rvh-lien-fin,body .rvtm .rvtm-plus a,body .rvc .rvh-carte a.rvge-bouton-ligne{transition:none}}

/* Contact : même style, un geste discret sur les coordonnées et la photographie. */
.rvct-liste>li>div>strong{position:relative;width:max-content;max-width:100%}
.rvct-liste>li>div>strong::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:#D6AE7B;transition:width .4s ease}
.rvct-liste>li .rvge-ico{transition:transform .3s ease}
.rvct-liste>li:focus-within>div>strong::after{width:100%}
.rvct-portrait img{transition:transform .35s ease}
@media(hover:hover) and (pointer:fine){.rvct-liste>li:hover>div>strong::after{width:100%}.rvct-liste>li:hover .rvge-ico{transform:translateY(-2px)}.rvct-portrait:hover img{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.rvct-liste>li>div>strong::after,.rvct-liste>li .rvge-ico,.rvct-portrait img{transition:none}.rvct-liste>li:hover .rvge-ico,.rvct-portrait:hover img{transform:none}}

/* Terre cuite approuvée : erreurs seulement, sans recolorer les fonds du site. */
html body :is(.rvc,.rvgb,.rvgc,.rvcp,.ccsr,.rv-app-dialog,.rvga) :is(input,select,textarea)[aria-invalid="true"],html body .rvct-form .rvct-manque,html body .rvgb :is(input,textarea).rvgb-champ-err{border-color:#984D3F!important}
html body :is(.rvg-erreur,.rvg-acces-erreur,.rvg-carte-msg.erreur,.rvct-etat.err,.rvgb-code-msg.err,.rvgb-retrouver-err,.rvgb-vig-err,.rvgc-manque,.rvs-temoin-erreur,.rvs-formation-erreur),html body .ccsr :is(.ccsr-erreur:not(.ccsr-bon),.ccsr-depot-erreur,.ccsr-prep-etat.ccsr-prep-erreur,.ccsr-manque-titre,.ccsr-fil li.manque){color:#984D3F!important}
html body .rvcp-msg-erreur,html body .rvgc .rvg-acces-erreur{border-left-color:#984D3F!important}
