/* Layout primitives required by the generated grid and JS behaviour. Visual defaults and colors are Divi element attributes. */
.mv_d5_domain_grid .mv-domaines__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,1vw,14px);margin-top:12px}
.mv_d5_domain_grid .mv-domaines__card{display:flex;min-width:0;flex-direction:column}
.mv_d5_domain_grid .mv-domaines__photo-link{display:block;position:relative;overflow:hidden}
.mv_d5_domain_grid .mv-domaines__photo{display:block;width:100%;height:100%;object-fit:cover}
/* Etat du survol : superposition technique uniquement. Couleurs et hauteur viennent de Divi. */
.mv_d5_domain_grid .mv-domaines__hover-frame{position:absolute;inset:0;display:block;pointer-events:none;opacity:0;transition:opacity 250ms ease-in-out}
.mv_d5_domain_grid .mv-domaines__hover-photo{display:block;width:100%;height:100%;object-fit:contain}
@media(hover:hover) and (pointer:fine){.mv_d5_domain_grid .mv-domaines__photo-link:hover .mv-domaines__hover-frame{opacity:1}}
.mv_d5_domain_grid .mv-domaines__photo-link:focus-visible .mv-domaines__hover-frame{opacity:1}
@media(prefers-reduced-motion:reduce){.mv_d5_domain_grid .mv-domaines__hover-frame{transition:none}}

.mv_d5_domain_grid .mv-domaines__image-fallback{height:100%;display:flex;justify-content:center;align-items:center;text-align:center}
.mv_d5_domain_grid .mv-domaines__details{flex:1;display:flex;flex-direction:column;gap:4px;min-height:0}
.mv_d5_domain_grid .mv-domaines__details p{padding:0;margin:0}
.mv_d5_domain_grid .mv-domaines__address{overflow-wrap:anywhere}
.mv_d5_domain_grid .mv-domaines__name{margin:0;padding:0}
.mv_d5_domain_grid .mv-domaines__name a{color:inherit}
.mv_d5_domain_grid .mv-domaines__search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.mv_d5_domain_grid .mv-domaines__search{width:100%;max-width:100%;box-sizing:border-box}
.mv_d5_domain_grid .mv-domaines__search{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2384827B' stroke-width='1.5'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:16px center}
.mv_d5_domain_grid .mv-domaines__actions{text-align:center}
/* Reset des styles natifs <button> : le design reste entièrement piloté par les attributs Divi. */
.mv_d5_domain_grid .mv-domaines__more{cursor:pointer;appearance:none;-webkit-appearance:none;border:0;box-shadow:none}
.mv_d5_domain_grid .mv-domaines__socials{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:10px}
.mv_d5_domain_grid .mv-domaines__social-link{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;text-decoration:none;line-height:1}
.mv_d5_domain_grid .mv-domaines__social-link svg{display:block;width:62%;height:62%;fill:currentColor;color:inherit}
.mv_d5_domain_grid .mv-domaines__social-link:focus-visible,.mv_d5_domain_grid .mv-domaines__photo-link:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.mv_d5_domain_grid [hidden]{display:none!important}
@media(max-width:980px){.mv_d5_domain_grid .mv-domaines__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.mv_d5_domain_grid .mv-domaines__grid{grid-template-columns:minmax(0,1fr)}}
