body.page-template-page-carte-villageoise .site-content,body.page-template-page-carte-villageoise .site-content>.ast-container,body.page-template-page-carte-villageoise #primary,body.page-template-page-carte-villageoise .site-main{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}body.page-template-page-carte-villageoise .site-content>.ast-container{display:block!important}.village-map-page{background:#f7f9fc}.village-map-shell{width:100%;max-width:none;margin:0;padding-left:clamp(18px,3vw,54px);padding-right:clamp(18px,3vw,54px)}.village-map-hero{padding:34px 0 22px;background:#f7f9fc}.map-breadcrumb{margin:0 0 8px;font-size:.9rem;color:#58708d}.map-breadcrumb a{color:#0b3f78;text-decoration:none}.map-breadcrumb span{padding:0 6px;color:#8ca0b5}.village-map-hero h1{margin:.25rem 0;color:#0b2d59;font-size:clamp(2rem,4vw,3rem)}.village-map-intro{max-width:760px;margin:8px 0 0;color:#45566c;font-size:1.05rem;line-height:1.6}.village-map-content{width:100%;padding:10px 0 60px}.village-map-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:24px;align-items:start}.map-panel,.map-help{background:#fff;border:1px solid #e0e7ef;border-radius:14px;padding:18px;margin-bottom:16px;box-shadow:0 8px 24px rgba(11,45,89,.06)}.map-panel h2{margin:0 0 12px;color:#0b2d59;font-size:1rem;text-transform:uppercase}.map-filter{display:flex;width:100%;justify-content:space-between;gap:8px;border:0;border-bottom:1px solid #edf1f5;background:transparent;text-align:left;padding:11px 10px;color:#27415f;font-weight:600;cursor:pointer;border-radius:8px}.map-filter small{opacity:.7}.map-filter:hover,.map-filter.active{background:#0b3f78;color:#fff}.map-panel input{width:100%;padding:12px;border:1px solid #ccd7e3;border-radius:8px}.map-list-panel{padding-bottom:8px}.map-place-list{max-height:300px;overflow:auto;margin:0 -6px}.map-place-item{display:flex;width:100%;flex-direction:column;gap:3px;padding:10px 9px;border:0;border-bottom:1px solid #edf1f5;background:transparent;text-align:left;cursor:pointer;border-radius:7px}.map-place-item:hover{background:#f1f6fa}.map-place-item strong{color:#173f5c;font-size:.88rem}.map-place-item small{color:#708399;font-size:.72rem;line-height:1.35}.map-help{background:#eef7e8;border-color:#d7e9ca;color:#254c1c}.map-help strong{display:block;margin-bottom:6px}.map-help p{margin:0 0 12px;font-size:.88rem;line-height:1.45}.map-help-btn{display:inline-block;background:#2e7d32;color:#fff!important;padding:10px 16px;border-radius:7px;text-decoration:none!important;font-weight:700}.map-main{min-width:0}#racine-village-map{width:100%;height:clamp(560px,72vh,820px);border-radius:16px;border:1px solid #d8e1ea;box-shadow:0 12px 32px rgba(11,45,89,.09);overflow:hidden}.map-results{padding:10px 4px;color:#60748c;font-size:.9rem}.racine-map-marker{background:transparent!important;border:0!important}.racine-map-marker span{display:grid;place-items:center;width:28px;height:28px;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.3)}.leaflet-popup-content strong{color:#0b3f78;font-size:1.05rem}.leaflet-popup-content p{margin:.55rem 0;color:#54677d;line-height:1.45}.leaflet-popup-content a{color:#2e7d32;font-weight:700;text-decoration:none}@media(max-width:900px){.village-map-layout{grid-template-columns:1fr}.map-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:14px}.map-help,.map-list-panel{grid-column:1/-1}.map-panel{margin:0}#racine-village-map{height:520px}.map-place-list{max-height:220px}}@media(max-width:600px){.map-sidebar{grid-template-columns:1fr}.map-list-panel,.map-help{grid-column:auto}#racine-village-map{height:430px}.village-map-shell{padding-left:16px;padding-right:16px}}

/* v1.21.1 - Carte villageoise plus colorée, sans fil d'Ariane */

/* Supprime tout ancien fil d'Ariane si du HTML résiduel demeure */
.rvmap-breadcrumb,
.rvm-breadcrumb,
.breadcrumb,
.breadcrumbs,
.fil-ariane,
[class*="breadcrumb"]{
  display:none!important;
}

/* Titre et intro */
.rvmap-hero,
.rvm-hero,
.racine-map-hero{
  background:
    radial-gradient(circle at 82% 18%,rgba(114,173,74,.28),transparent 26%),
    linear-gradient(135deg,#075f8f 0%,#0c759e 58%,#2f8e74 100%)!important;
}
.rvmap-hero h1,
.rvm-hero h1,
.racine-map-hero h1{
  text-shadow:0 2px 14px rgba(0,0,0,.12);
}

/* Colonne menu */
.rvmap-menu,
.rvm-map-sidebar,
.racine-map-sidebar{
  background:linear-gradient(180deg,#ffffff 0%,#f4f9fb 100%)!important;
  border-right:1px solid #d3e4eb!important;
}
.rvmap-menu__top,
.rvm-map-sidebar__top{
  background:
    linear-gradient(135deg,rgba(8,105,151,.08),rgba(103,164,63,.08))!important;
}
.rvmap-menu__top h2,
.rvm-map-sidebar__top h2{
  color:#0a5e88!important;
}

/* Recherche */
.rvmap-search,
.rvm-search,
.racine-map-search{
  background:#fff!important;
  border:1px solid #bdd7e2!important;
  box-shadow:0 3px 12px rgba(17,79,111,.06)!important;
}
.rvmap-search:focus-within,
.rvm-search:focus-within,
.racine-map-search:focus-within{
  border-color:#0b719f!important;
  box-shadow:0 0 0 3px rgba(11,113,159,.10)!important;
}

/* Filtres colorés */
.rvmap-filters button,
.rvm-filters button,
.racine-map-filters button{
  border-width:1px!important;
  transition:.18s ease!important;
}
.rvmap-filters button[data-filter="tourisme"],
.rvm-filters button[data-filter="tourisme"]{
  background:#fff8dd!important;
  border-color:#e7ca62!important;
  color:#8a6d00!important;
}
.rvmap-filters button[data-filter="patrimoine"],
.rvm-filters button[data-filter="patrimoine"]{
  background:#f7eee8!important;
  border-color:#c9a88f!important;
  color:#76523b!important;
}
.rvmap-filters button[data-filter="municipal"],
.rvm-filters button[data-filter="municipal"]{
  background:#e8f5fb!important;
  border-color:#8fc9df!important;
  color:#075f8b!important;
}
.rvmap-filters button[data-filter="divers"],
.rvm-filters button[data-filter="divers"]{
  background:#eef1f3!important;
  border-color:#c5ced3!important;
  color:#4f626d!important;
}
.rvmap-filters button.is-active,
.rvm-filters button.is-active{
  background:#0b6896!important;
  border-color:#0b6896!important;
  color:#fff!important;
  box-shadow:0 5px 13px rgba(11,104,150,.18)!important;
}

/* Liste des lieux */
.rvmap-list-item,
.rvm-place-item,
.racine-map-place{
  transition:background .16s ease,transform .16s ease!important;
}
.rvmap-list-item:hover,
.rvmap-list-item.is-active,
.rvm-place-item:hover,
.rvm-place-item.is-active{
  background:linear-gradient(90deg,#eef8fb,#f5faef)!important;
}
.rvmap-list-item.is-active{
  border-left:4px solid #6ba645!important;
}

/* Icônes selon catégories */
.rvmap-list-item[data-category="tourisme"] .rvmap-list-item__icon{
  background:#fff3bd!important;color:#9b7700!important;
}
.rvmap-list-item[data-category="patrimoine"] .rvmap-list-item__icon{
  background:#efe1d7!important;color:#7b563e!important;
}
.rvmap-list-item[data-category="municipal"] .rvmap-list-item__icon{
  background:#dff1f8!important;color:#076b98!important;
}
.rvmap-list-item[data-category="divers"] .rvmap-list-item__icon{
  background:#e8ecef!important;color:#526670!important;
}

/* Carte et panneau détail */
.rvmap-canvas-wrap,
.rvm-map-wrap,
.racine-map-wrap{
  background:#eaf2f5!important;
}
.rvmap-detail,
.rvm-map-detail,
.racine-map-detail{
  border:1px solid #d3e4ea!important;
  box-shadow:0 14px 34px rgba(18,62,84,.16)!important;
}
.rvmap-detail__cat,
.rvm-map-detail__cat{
  background:linear-gradient(90deg,#eaf4e5,#e5f3f8)!important;
  color:#386f42!important;
}

/* Boutons */
.rvmap-map-tools button,
.rvm-map-tools button,
.rvmap-detail__web,
.rvm-detail__web{
  background:linear-gradient(135deg,#0a6897,#087ba5)!important;
  color:#fff!important;
}
.rvmap-map-tools button:hover,
.rvm-map-tools button:hover,
.rvmap-detail__web:hover,
.rvm-detail__web:hover{
  filter:brightness(.96);
}

/* Petit accent vert sous le titre principal du module */
.rvmap-menu__top:after,
.rvm-map-sidebar__top:after{
  content:"";
  display:block;
  width:54px;
  height:4px;
  margin-top:15px;
  border-radius:999px;
  background:linear-gradient(90deg,#65a43d,#0b75a0);
}

/* ==========================================================
   v1.21.2 - Carte villageoise, finition premium municipale
   ========================================================== */

.rvmap-hero{
  padding:54px 0 44px!important;
  background:
    radial-gradient(circle at 88% 18%,rgba(121,185,79,.34),transparent 25%),
    linear-gradient(135deg,#075b86 0%,#08759f 62%,#348d73 100%)!important;
}
.rvmap-hero__inner{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:38px;
}
.rvmap-hero__copy{max-width:820px}
.rvmap-hero__summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(90px,1fr));
  gap:10px;
  min-width:340px;
}
.rvmap-hero__summary>div{
  padding:15px 13px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:14px;
  background:rgba(255,255,255,.10);
  box-shadow:inset 0 1px rgba(255,255,255,.08);
  text-align:center;
  backdrop-filter:blur(8px);
}
.rvmap-hero__summary strong{
  display:block;
  color:#fff;
  font-size:1.65rem;
  line-height:1;
}
.rvmap-hero__summary span{
  display:block;
  margin-top:6px;
  color:rgba(255,255,255,.82);
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.rvmap-explorer{
  padding:30px 24px 42px!important;
  background:linear-gradient(180deg,#eff5f7 0%,#f7fafb 100%);
}
.rvmap-explorer__grid{
  min-height:760px!important;
  border-color:#cfdee5!important;
  border-radius:24px!important;
  box-shadow:0 18px 46px rgba(14,57,80,.12)!important;
}

.rvmap-menu{
  background:#fff!important;
}
.rvmap-menu__top{
  padding:25px 22px 18px!important;
  background:
    linear-gradient(145deg,rgba(8,108,153,.075),rgba(101,166,62,.065))!important;
}
.rvmap-menu__top h2{
  font-size:1.8rem!important;
  letter-spacing:-.02em;
}
.rvmap-menu__top p{
  margin-bottom:14px!important;
}

.rvmap-category-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:14px;
}
.rvmap-category-cards button{
  min-width:0;
  padding:12px 11px;
  border:1px solid #d9e5ea;
  border-radius:12px;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.17s ease;
}
.rvmap-category-cards button:hover{
  transform:translateY(-1px);
  box-shadow:0 5px 14px rgba(25,67,89,.08);
}
.rvmap-category-cards button span{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  margin-bottom:6px;
  border-radius:8px;
  font-size:.82rem;
}
.rvmap-category-cards button strong{
  display:block;
  overflow:hidden;
  color:#254f68;
  font-size:.76rem;
  line-height:1.18;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.rvmap-category-cards button small{
  display:block;
  margin-top:3px;
  color:#82919a;
  font-size:.64rem;
}
.rvmap-category-cards button[data-filter="tourisme"] span{background:#fff2bd;color:#9b7800}
.rvmap-category-cards button[data-filter="patrimoine"] span{background:#efe2d8;color:#76543d}
.rvmap-category-cards button[data-filter="municipal"] span{background:#dff2f9;color:#076c99}
.rvmap-category-cards button[data-filter="divers"] span{background:#e9edef;color:#596b74}
.rvmap-category-cards button.is-active{
  border-color:#65a63e;
  box-shadow:0 0 0 2px rgba(101,166,62,.12);
}

.rvmap-list-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:11px 16px;
  border-top:1px solid #e3ebee;
  border-bottom:1px solid #e3ebee;
  background:#f8fafb;
}
.rvmap-list-head>span{
  color:#2b536a;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.rvmap-list-head small{
  color:#83939b;
  font-size:.66rem;
}

.rvmap-list-item{
  padding:13px 16px!important;
}
.rvmap-list-item__icon{
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.03);
}
.rvmap-list-item.is-active{
  background:linear-gradient(90deg,#e9f5f8,#f3f9ef)!important;
  box-shadow:inset 4px 0 #66a63e;
}

.rvmap-canvas-wrap{
  background:#dce8ed!important;
}
.rvmap-map{
  height:760px!important;
}
.rvmap-map-tools{
  top:16px!important;
  right:16px!important;
}
.rvmap-map-tools button{
  padding:10px 14px!important;
  border:1px solid rgba(7,87,128,.12)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#075d89!important;
  box-shadow:0 6px 18px rgba(12,49,68,.15)!important;
}

.rvmap-pin{
  width:42px!important;
  height:42px!important;
  border-width:3px!important;
  box-shadow:0 5px 16px rgba(0,0,0,.28)!important;
}
.rvmap-pin--tourisme{background:#d7a414!important}
.rvmap-pin--patrimoine{background:#8a664c!important}
.rvmap-pin--municipal{background:#0879aa!important}
.rvmap-pin--divers{background:#657985!important}

.rvmap-detail{
  width:min(410px,calc(100% - 36px))!important;
  padding:24px!important;
  border-top:5px solid #67a53f!important;
  border-radius:18px!important;
}
.rvmap-detail__cat{
  padding:6px 10px!important;
  background:#eaf4e5!important;
  color:#4d8530!important;
}
.rvmap-detail h3{
  font-size:1.55rem!important;
  letter-spacing:-.01em;
}
.rvmap-detail__line{
  padding:10px 0!important;
}
.rvmap-detail__web{
  width:100%;
  justify-content:center;
  background:linear-gradient(135deg,#086a98,#0780a9)!important;
}

.leaflet-control-zoom a{
  color:#0b658f!important;
}
.leaflet-popup-content-wrapper{
  border-radius:12px!important;
}

@media(max-width:1100px){
  .rvmap-hero__inner{
    align-items:flex-start;
    flex-direction:column;
  }
  .rvmap-hero__summary{
    width:100%;
    min-width:0;
    max-width:520px;
  }
}
@media(max-width:780px){
  .rvmap-hero__summary{
    grid-template-columns:repeat(3,1fr);
  }
  .rvmap-category-cards{
    grid-template-columns:repeat(2,1fr);
  }
  .rvmap-map{height:520px!important}
  .rvmap-explorer{padding:0 0 28px!important}
  .rvmap-explorer__grid{
    border-radius:0!important;
  }
}
@media(max-width:480px){
  .rvmap-hero__summary{
    grid-template-columns:1fr;
  }
}

/* ==========================================================
   v1.21.3 - Catégories et lieux améliorés
   ========================================================== */

.rvmap-category-title{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin-top:17px;
  margin-bottom:9px;
}
.rvmap-category-title>span{
  color:#244e66;
  font-size:.73rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rvmap-category-title small{
  color:#89979f;
  font-size:.65rem;
}

.rvmap-category-cards{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  margin-top:0!important;
}
.rvmap-category-cards button{
  position:relative;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 30px;
  gap:10px;
  align-items:center;
  min-height:62px;
  padding:10px 12px!important;
  border:1px solid #d8e5ea!important;
  border-radius:13px!important;
  background:#fff!important;
  text-align:left;
  overflow:hidden;
}
.rvmap-category-cards button:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  opacity:.85;
}
.rvmap-category-cards button[data-filter="tourisme"]:before{background:#d2a118}
.rvmap-category-cards button[data-filter="patrimoine"]:before{background:#8a674e}
.rvmap-category-cards button[data-filter="municipal"]:before{background:#0878a8}
.rvmap-category-cards button[data-filter="divers"]:before{background:#687984}

.rvmap-category-cards__icon{
  width:38px!important;
  height:38px!important;
  margin:0!important;
  display:grid!important;
  place-items:center;
  border-radius:11px!important;
  font-size:1rem!important;
}
.rvmap-category-cards__copy{
  min-width:0;
}
.rvmap-category-cards__copy strong{
  display:block;
  color:#204a62!important;
  font-size:.79rem!important;
  line-height:1.15;
}
.rvmap-category-cards__copy small{
  display:block;
  margin-top:4px!important;
  color:#81919a!important;
  font-size:.64rem!important;
  line-height:1.25;
}
.rvmap-category-cards button>b{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#f0f4f6;
  color:#547080;
  font-size:.72rem;
  font-weight:900;
}
.rvmap-category-cards button.is-active{
  transform:translateX(2px);
  background:linear-gradient(90deg,#fff,#f7fbfc)!important;
  border-color:#bcd4de!important;
  box-shadow:0 5px 15px rgba(18,68,94,.08)!important;
}
.rvmap-category-cards button.is-active>b{
  background:#0b6896;
  color:#fff;
}

.rvmap-list-head{
  padding:12px 15px!important;
  background:linear-gradient(90deg,#f4f8fa,#f8fbfc)!important;
}
.rvmap-list-head>div{
  display:flex;
  min-width:0;
  flex-direction:column;
}
.rvmap-list-head>div>span{
  color:#234e66;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.rvmap-list-head>div small{
  margin-top:2px;
  color:#89979f;
  font-size:.64rem;
}
.rvmap-list-head__badge{
  flex:0 0 auto;
  min-width:28px;
  height:28px;
  display:grid;
  place-items:center;
  padding:0 7px;
  border-radius:999px;
  background:#0b6896;
  color:#fff;
  font-size:.72rem;
  font-weight:900;
}

.rvmap-list{
  background:#fff;
}
.rvmap-list-item{
  position:relative;
  grid-template-columns:44px minmax(0,1fr) 28px!important;
  gap:12px!important;
  padding:14px 15px!important;
  border-bottom:1px solid #edf2f4!important;
}
.rvmap-list-item:after{
  content:"";
  position:absolute;
  left:71px;
  right:15px;
  bottom:-1px;
  height:1px;
  background:#f2f5f7;
}
.rvmap-list-item:last-child:after{display:none}
.rvmap-list-item__icon{
  width:42px!important;
  height:42px!important;
  border-radius:12px!important;
  font-size:1rem!important;
}
.rvmap-list-item__category{
  align-self:flex-start;
  display:inline-flex;
  width:max-content;
  max-width:100%;
  padding:3px 7px;
  margin-bottom:4px;
  border-radius:999px;
  background:#f0f5f7;
  color:#617985;
  font-size:.61rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.rvmap-list-item[data-category="tourisme"] .rvmap-list-item__category{
  background:#fff5cf;color:#8a6b00;
}
.rvmap-list-item[data-category="patrimoine"] .rvmap-list-item__category{
  background:#f3e7de;color:#76523c;
}
.rvmap-list-item[data-category="municipal"] .rvmap-list-item__category{
  background:#e2f3f9;color:#086b96;
}
.rvmap-list-item[data-category="divers"] .rvmap-list-item__category{
  background:#edf0f2;color:#566a74;
}

.rvmap-list-item__text strong{
  margin:0 0 3px!important;
  color:#143f59!important;
  font-size:.92rem!important;
  line-height:1.2;
}
.rvmap-list-item__text em{
  display:flex!important;
  align-items:flex-start;
  gap:3px;
  color:#7b8b94!important;
  font-size:.7rem!important;
  line-height:1.3;
  white-space:normal!important;
}
.rvmap-list-item__text em span{
  flex:0 0 auto;
  color:#6ca349;
}
.rvmap-list-item__arrow{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eef5f7;
  color:#0b6896!important;
  font-size:.85rem!important;
  transition:.15s ease;
}
.rvmap-list-item:hover .rvmap-list-item__arrow,
.rvmap-list-item.is-active .rvmap-list-item__arrow{
  background:#0b6896;
  color:#fff!important;
  transform:translateX(2px);
}
.rvmap-list-item:hover{
  background:#f9fcfd!important;
}
.rvmap-list-item.is-active{
  background:linear-gradient(90deg,#eaf6f8,#f6faef)!important;
}
.rvmap-list-item.is-active .rvmap-list-item__text strong{
  color:#0a5d88!important;
}

@media(max-width:780px){
  .rvmap-category-cards{
    grid-template-columns:1fr 1fr!important;
  }
  .rvmap-category-cards button{
    grid-template-columns:34px minmax(0,1fr)!important;
  }
  .rvmap-category-cards button>b{
    display:none;
  }
  .rvmap-category-cards__copy small{
    display:none;
  }
}
@media(max-width:520px){
  .rvmap-category-cards{
    grid-template-columns:1fr!important;
  }
}

/* v1.21.4 — boîtes Catégories et Lieux plus affirmées */
.rvmap-category-title,
.rvmap-list-head{
  position:relative;
  overflow:hidden;
  border:1px solid #cbdfe7!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#075f8d 0%,#0879a3 70%,#4d9a68 100%)!important;
  box-shadow:0 9px 22px rgba(11,82,119,.16)!important;
}
.rvmap-category-title{
  align-items:center!important;
  margin:18px 0 12px!important;
  padding:14px 16px!important;
}
.rvmap-category-title:after,
.rvmap-list-head:after{
  content:"";
  position:absolute;
  width:90px;height:90px;
  right:-30px;top:-45px;
  border-radius:50%;
  background:rgba(255,255,255,.10);
}
.rvmap-category-title>span,
.rvmap-list-head>div>span{color:#fff!important;font-size:.82rem!important}
.rvmap-category-title small,
.rvmap-list-head>div small{color:rgba(255,255,255,.78)!important}

.rvmap-category-cards{gap:11px!important}
.rvmap-category-cards button{
  min-height:72px!important;
  border:0!important;
  border-radius:16px!important;
  box-shadow:0 7px 18px rgba(27,66,86,.09)!important;
}
.rvmap-category-cards button[data-filter="tourisme"]{background:linear-gradient(135deg,#fff9e7,#fff1b9)!important}
.rvmap-category-cards button[data-filter="patrimoine"]{background:linear-gradient(135deg,#fbf5f0,#ead8ca)!important}
.rvmap-category-cards button[data-filter="municipal"]{background:linear-gradient(135deg,#f0faff,#d7f0f9)!important}
.rvmap-category-cards button[data-filter="divers"]{background:linear-gradient(135deg,#f7f9fa,#e7edef)!important}
.rvmap-category-cards button:hover{transform:translateY(-2px) scale(1.01)!important}
.rvmap-category-cards button.is-active{
  outline:3px solid rgba(101,166,62,.20)!important;
  border:1px solid #68a640!important;
}
.rvmap-category-cards__icon{
  width:44px!important;height:44px!important;border-radius:14px!important;
  box-shadow:0 5px 12px rgba(0,0,0,.08);
}
.rvmap-category-cards button>b{
  width:32px!important;height:32px!important;
  box-shadow:0 3px 8px rgba(0,0,0,.08);
}

/* Bloc Lieux comme une vraie section visuelle */
.rvmap-list-head{
  margin:16px 12px 10px!important;
  padding:14px 16px!important;
  border:0!important;
}
.rvmap-list-head__badge{
  position:relative;z-index:2;
  background:#fff!important;color:#0a648f!important;
  box-shadow:0 3px 10px rgba(0,0,0,.12);
}
.rvmap-list{
  margin:0 12px 16px;
  padding:7px;
  border:1px solid #d9e6eb;
  border-radius:18px;
  background:#f4f8fa!important;
  box-shadow:0 8px 22px rgba(27,65,85,.07);
}
.rvmap-list-item{
  margin:5px 0;
  border:1px solid #e0eaee!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(24,62,82,.045);
}
.rvmap-list-item:after{display:none!important}
.rvmap-list-item:hover{
  transform:translateX(3px);
  border-color:#b9d5df!important;
  background:linear-gradient(90deg,#fff,#f2f9fb)!important;
  box-shadow:0 7px 16px rgba(20,70,96,.09);
}
.rvmap-list-item.is-active{
  transform:translateX(3px);
  border-color:#78ae58!important;
  background:linear-gradient(90deg,#eef8e9,#edf8fb)!important;
  box-shadow:0 8px 18px rgba(70,126,72,.12),inset 4px 0 #67a53f!important;
}
.rvmap-list-item__icon{
  width:46px!important;height:46px!important;
  border-radius:14px!important;
  box-shadow:0 4px 10px rgba(0,0,0,.07)!important;
}
.rvmap-list-item__category{
  padding:4px 8px!important;
  font-size:.59rem!important;
}
.rvmap-list-item__arrow{
  width:30px!important;height:30px!important;
  box-shadow:0 3px 8px rgba(16,77,107,.08);
}
@media(max-width:780px){
 .rvmap-list{margin-left:10px;margin-right:10px}
 .rvmap-list-head{margin-left:10px!important;margin-right:10px!important}
}
