/* Carte « Où acheter » */
.bemr-rv { display: grid; gap: 1.2rem; }
.bemr-rv__recherche label { display: block; font-weight: 600; margin-bottom: .35rem; }
.bemr-rv__champ { display: flex; flex-wrap: wrap; gap: .6rem; }
.bemr-rv__champ input { flex: 1 1 14rem; min-height: 2.9rem; padding: .6rem .8rem; font: inherit; border: 1px solid var(--wp--preset--color--secondary); border-radius: 4px; background: var(--wp--preset--color--base); }
.bemr-rv__champ input:focus-visible { outline: 3px solid var(--wp--preset--color--primary); outline-offset: 1px; }
.bemr-rv__carte { height: clamp(360px, 60vh, 560px); background: var(--wp--preset--color--tertiary); border: 1px solid var(--wp--preset--color--border-light); display: grid; place-items: center; z-index: 0; }
.bemr-rv__carte.leaflet-container { display: block; }
.bemr-rv__attente { color: var(--wp--preset--color--secondary); padding: 1rem; text-align: center; }
.bemr-rv__legende { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem 1.2rem; font-size: .9rem; margin: 0; }
.bemr-rv__pastille { display: inline-block; width: 14px; height: 14px; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 0 0 1px #999; vertical-align: -2px; margin-right: .3rem; }
.bemr-rv__pastille--sim { background: #008A4C; }
.bemr-rv__pastille--complete { background: #1F2A24; width: 18px; height: 18px; }
.bemr-rv__titre-res, .bemr-rv__titre-liste { font-size: var(--wp--preset--font-size--large); margin: .5rem 0 0; }
.bemr-rv__proches, .bemr-rv__dep ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .8rem; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.bemr-rv__proches { counter-reset: pdv; }
.bemr-rv__pdv { display: flex; flex-direction: column; gap: .15rem; padding: .9rem 1rem; background: var(--wp--preset--color--base); border: 1px solid var(--wp--preset--color--border-light); border-top: 4px solid var(--wp--preset--color--primary); font-size: .92rem; }
.bemr-rv__nom { font-family: var(--wp--preset--font-family--condensed); text-transform: uppercase; font-size: 1.05rem; letter-spacing: .02em; }
.bemr-rv__gamme { align-self: flex-start; margin-top: .3rem; padding: .1rem .5rem; font-size: .8rem; font-weight: 600; background: var(--wp--preset--color--primary-accent); color: var(--wp--preset--color--main); border-radius: 3px; }
.bemr-rv__gamme--complete { background: #1F2A24; color: #fff; }
.bemr-rv__km { font-weight: 600; color: var(--wp--preset--color--primary); }
.bemr-rv__itin { font-weight: 600; margin-top: .2rem; }
.bemr-rv__dep { border-bottom: 1px solid var(--wp--preset--color--border-light); }
.bemr-rv__dep summary { cursor: pointer; padding: .7rem 0; font-weight: 600; }
.bemr-rv__dep summary span { font-weight: 400; color: var(--wp--preset--color--secondary); }
.bemr-rv__dep[open] summary { margin-bottom: .6rem; }
.bemr-rv__dep[open] ul { margin-bottom: 1rem; }
.bemr-rv__popup { display: flex; flex-direction: column; gap: .1rem; font: inherit; font-size: .9rem; }
.bemr-rv__popup .bemr-rv__gamme { margin-top: .2rem; }
