.elementor-34386 .elementor-element.elementor-element-63792c4 > .elementor-container > .elementor-row{align-items:stretch;}@media(min-width:361px){.elementor-34386 .elementor-element.elementor-element-b0d4e6f{width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-7a4b378 */Réécrit l'ensemble du code pour le rendre plus propre: 

/* ================ MAP FULL + PANEL DROIT (style "screen") ================ */
.elementor-34386 .elementor-element.elementor-element-7a4b378 { position: relative; padding: 0 !important; }

/* Carte en fond, pleine hauteur */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-wrap{ position: relative; min-height: 100vh; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{
  position: absolute; inset: 0;
  width: 100% !important; height: 100% !important;
}

/* ---------------- Panneau ---------------- */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  position: absolute; top: 0; right: 0;
  width: 520px; height: 100%;
  overflow: auto;
  background: rgba(255,255,255,.96);
  box-shadow: -18px 0 40px rgba(0,0,0,.10);
  border-left: 1px solid #e9e9e9;

  /* place pour la barre (64px de haut + 20px de pad au-dessus et au-dessous)
     + 20px d’espace visuel entre barre et liste */
  padding: 104px 24px 24px 24px; /* top | right | bottom | left */
  box-sizing: border-box;
  z-index: 2;
}

/* ---------------- Barre de recherche (bandeau) ---------------- */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  position: absolute; top: 0; right: 0;
  width: 520px; z-index: 3;
  background: transparent; border: 0; padding: 20px !important;
  box-shadow: none;
}

/* vrai bandeau : input + (futur) bouton "My location" */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{
  display: grid;
  grid-template-columns: 1fr 140px; /* input large + bouton à droite */
  column-gap: 16px; align-items: stretch;
  background: #fff; border: 1px solid #dedede; border-radius: 4px;
  padding: 10px; box-shadow: 0 6px 22px rgba(0,0,0,.08);
}

/* masquer le label "Adresse" */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap label{ display: none; }

/* input */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  height: 44px; line-height: 44px; font-size: 16px;
  padding: 0 14px; border: 1px solid #ddd; border-radius: 4px;
  width: 100%; box-sizing: border-box; box-shadow: none;
}

/* le bouton "Rechercher" d'origine : on le masque (on gardera Enter) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-btn{ display: none !important; }

/* le bouton "My location" (on va l’injecter/transformer en JS ci-dessous) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 .wpsl-geo-btn,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-geo-btn{
  display: inline-flex; align-items: center; justify-content: center;
  height: 44px; padding: 0 14px; width: 100%;
  background: #111; color: #fff; border: 1px solid #111;
  border-radius: 4px; text-decoration: none; cursor: pointer;
  box-shadow: none;
}

/* ---------------- Liste / cartes ---------------- */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-direction: column; gap: 18px;
}

/* si tu as mon template .bl-*, on stylise les cartes riches */
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  display: grid; grid-template-columns: 140px 1fr; gap: 16px;
  background: #fff; border: 1px solid #e6e6e6; border-radius: 6px;
  padding: 16px; box-shadow: 0 8px 20px rgba(0,0,0,.06);
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-thumb img{ width: 100%; height: 100%; object-fit: cover; border-radius: 4px; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-title{ margin: 0 0 6px; font-size: 18px; font-weight: 700; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-status-open{ color: #0a8a2a; font-weight: 600; } /* "Open" */
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-address, .elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-hours{ margin: 0 0 8px; color:#6a6a6a; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-actions{ margin-top: 10px; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-btn{ display:inline-flex; align-items:center; gap:8px;
  padding: 10px 14px; border:1px solid #cfcfcf; background:#fafafa; border-radius: 4px;
  text-decoration:none; color:#222;
}

/* fallback (pas de template .bl-*) : on donne un look proche */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li{
  background: #fff; border: 1px solid #e6e6e6; border-radius: 6px;
  padding: 16px; box-shadow: 0 8px 20px rgba(0,0,0,.06);
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list h3{ margin: 0 0 6px; font-size: 18px; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-direction-wrap a{ color:#0a8a2a; font-weight:600; } /* “Open” si présent */

/* ---------------- Responsive ---------------- */
@media (max-width: 1024px){
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-wrap{ min-height: auto; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{ position: relative; height: 50vh !important; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{ position: relative; width: 100%; padding: 12px !important; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
    position: relative; width: 100%; height: auto; max-height: none;
    padding: 12px; box-shadow: none; border-left: 0;
  }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{ grid-template-columns: 1fr 120px; }
}

/* --- Retirer le fond blanc semi-transparent du panneau et de la barre --- */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  background: transparent !important;
  box-shadow: none !important;
  border-left: 0 !important;
}

.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* (facultatif) si tu veux aussi supprimer les arrondis/ombres des cartes : */
/*
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li{
  border-radius: 0 !important;
  box-shadow: none !important;
}
*/

/* ===== PATCH demandé ===== */

/* 1) Masquer la barre de scroll mais garder le défilement */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  overflow: auto;              /* on continue à pouvoir scroller */
  scrollbar-width: none;       /* Firefox */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display: none; } /* Chrome/Edge/Safari */

/* 2) Retirer tous les arrondis sur les cards */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-thumb img{
  border-radius: 0 !important;
  box-shadow: none;            /* optionnel : enlève l'ombre aussi */
}

/* 3) Barre de recherche : input plein largeur, bouton masqué */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{
  display: grid;
  grid-template-columns: 1fr;  /* une seule colonne = full width */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-btn,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .wpsl-search-btn-wrap{
  display: none !important;    /* masque le bouton de recherche */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width: 100% !important;
  box-sizing: border-box;
}

/* --- 1) Retirer le "carré blanc" derrière la zone de texte --- */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-top: 0 !important;   /* optionnel: bandeau plus fin */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{
  background: transparent !important;   /* enlève le fond blanc du bandeau */
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
/* L’input reste visible; on garde son contour propre */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width: 100% !important;
  box-sizing: border-box;
}

/* --- 2) Cacher la barre de scroll (on peut toujours scroller) --- */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  overflow: auto;                 /* scrolling toujours OK */
  scrollbar-width: none;          /* Firefox */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display: none; } /* Chrome/Edge/Safari */

/* --- 3) Réduire l’espace entre les cards --- */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{
  gap: 10px !important;           /* était plus grand -> resserré */
}
/* Si tu utilises les cartes .bl-*, on peut aussi réduire leur padding interne */
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{ padding: 12px !important; }
/* Fallback sur la liste par défaut WPSL */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li{ padding: 12px !important; }

/* ====== ESPACE EN HAUT + AUCUNE SCROLLBAR + CARDS SANS ARRONDIS ====== */

/* Panneau à droite : on réserve un vrai espace en haut pour la barre */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  position: absolute;
  top: 0; right: 0;
  width: 400px !important;       /* adapte si ton panneau a une autre largeur */
  height: 100%;
  padding: 100px 24px 20px 24px !important; /* <-- espace haut + espace intérieur */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  /* Cacher la scrollbar du panneau mais garder le scroll au trackpad/souris */
  overflow: auto;
  -ms-overflow-style: none;      /* IE/Edge legacy */
  scrollbar-width: none;         /* Firefox */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display:none; } /* Chrome/Safari/Edge */

/* Barre de recherche : décolée du haut et alignée au panneau */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  position: absolute;
  top: 20px;                     /* <-- espace au-dessus de l’input */
  right: 24px;
  width: calc(400px - 48px) !important;  /* 400 - padding latéral (24*2) */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{
  margin: 0; padding: 0;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
/* Input plein largeur */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width: 100% !important;
  height: 46px;
  padding: 0 14px;
  box-sizing: border-box;
}

/* SUPPRIMER la scrollbar interne des cards (c’est celle qui se voit sur ton screen) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{
  max-height: none !important;
  overflow: visible !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location::-webkit-scrollbar{ display:none !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{ scrollbar-width: none !important; }

/* Cards sans arrondi et espace entre elles plus serré */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ gap: 10px !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-thumb img{
  border-radius: 0 !important;
  /* enlève aussi les ombres si tu veux un look "plat" */
  /* box-shadow: none !important; */
}
/* === 0) Section Elementor en plein écran, pleine largeur (full-bleed) === */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  position: relative;
  padding: 0 !important;
  /* étend la section de bord à bord même si le thème a un conteneur centré */
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* === 1) Carte plein écran === */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-wrap{ position: relative; min-height: 100vh; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{
  position: absolute; inset: 0;
  width: 100% !important; height: 100% !important;
}

/* === 2) Panneau à droite (même logique que les cards) === */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  position: absolute; top: 0; right: 0;
  width: 520px;               /* largeur du panneau (ajuste si besoin) */
  height: 100%;
  padding: 96px 24px 24px 24px !important; /* espace pour la barre + marges internes */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  /* masquer la scrollbar du panneau mais garder le scroll */
  overflow: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display: none; }

/* === 3) Barre de recherche : même largeur que les cards, sans arrondi === */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  position: absolute;
  top: 24px;                       /* espace en haut */
  right: 24px;                     /* même padding que la liste */
  width: calc(520px - 48px) !important;  /* panneau (520) − paddings (24*2) = largeur cartes */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* input pleine largeur, rectangulaire (pas de border-radius) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{ margin: 0; padding: 0; border: 0; box-shadow: none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width: 100% !important;
  height: 46px; line-height: 46px;
  padding: 0 14px; box-sizing: border-box;
  border: 1px solid #ddd !important;
  border-radius: 0 !important;       /* <-- pas d'arrondi */
  box-shadow: none !important;
}

/* === 4) Cards : sans arrondi, gap resserré, pas de scroll interne === */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ list-style: none; margin: 0; padding: 0; gap: 12px !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-thumb img{
  border-radius: 0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{
  max-height: none !important;
  overflow: visible !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location::-webkit-scrollbar{ display: none !important; }

/* === 5) Responsive (panneau sous la carte) === */
@media (max-width: 1024px){
  .elementor-34386 .elementor-element.elementor-element-7a4b378{ width: 100% !important; margin-left: 0; margin-right: 0; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{ position: relative; height: 50vh !important; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
    position: relative; width: 100%; height: auto; padding: 16px !important;
  }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{ position: relative; width: 100% !important; right: 0; top: 0; }
}

/* Même largeur pour l’input que les cards, pas d’arrondi */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  position:absolute; top:24px; right:24px;
  width: 472px !important;               /* = largeur cartes */
  background:transparent !important; border:0 !important; box-shadow:none !important;
  padding:0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{ margin:0; padding:0; border:0; box-shadow:none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width:100% !important; height:46px;
  padding:0 14px; box-sizing:border-box;
  border:1px solid #ddd !important; border-radius:0 !important; box-shadow:none !important;
}

/* Réglages panneau / input */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  --panel-w: 520px;     /* largeur du panneau droit */
  --panel-pad: 24px;    /* padding interne gauche/droite du panneau */
  --search-h: 46px;     /* hauteur de l'input */
}

/* Section plein écran, carte bord à bord */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  position: relative; padding: 0 !important;
  width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-wrap{ position: relative; min-height: 100vh; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{ position: absolute; inset: 0; width:100% !important; height:100% !important; }

/* Panneau droit */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  position: absolute; top: 0; right: 0;
  width: var(--panel-w); height: 100%;
  padding: calc(var(--search-h) + 40px) var(--panel-pad) var(--panel-pad) var(--panel-pad) !important;
  background: transparent !important; border: 0 !important; box-shadow: none !important;
  overflow: auto; -ms-overflow-style: none; scrollbar-width: none; /* cache scrollbar */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display: none; }

/* Pas de scroll interne ni arrondis sur les cards */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{ max-height:none !important; overflow:visible !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location::-webkit-scrollbar{ display:none !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ list-style:none; margin:0; padding:0; gap:12px; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-thumb img{ border-radius:0 !important; }

/* Barre de recherche = même largeur que les cards */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  position:absolute; top:24px; right:var(--panel-pad);
  width: calc(var(--panel-w) - 2*var(--panel-pad)) !important;
  background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{ margin:0; padding:0; border:0; box-shadow:none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap label{ display:none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width:100% !important; height: var(--search-h); line-height: var(--search-h);
  padding:0 14px; box-sizing:border-box;
  border:1px solid #ddd !important; border-radius:0 !important; box-shadow:none !important;
}

/* Masquer "Plan / Satellite" */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap .gm-style-mtc{ display:none !important; }

/* Responsive : panneau sous la carte */
@media (max-width:1024px){
  .elementor-34386 .elementor-element.elementor-element-7a4b378{ width:100% !important; margin-left:0; margin-right:0; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{ position:relative; height:50vh !important; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{ position:relative; width:100%; height:auto; padding:16px !important; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{ position:relative; top:0; right:0; width:100% !important; margin-bottom:12px; }
}
/* ==== Réglages (ajuste si besoin) ==== */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  --panel-w: 520px;     /* largeur panneau liste à droite */
  --panel-pad: 24px;    /* padding interne horizontal du panneau */
  --search-h: 46px;     /* hauteur de l'input */
}

/* Section bord à bord, carte plein écran */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  position: relative; padding: 0 !important;
  width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-wrap{ position: relative; min-height: 100vh; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{ position: absolute; inset: 0; width:100% !important; height:100% !important; }

/* Panneau droit (scroll ok, barre de scroll masquée) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  position: absolute; top: 0; right: 0;
  width: var(--panel-w); height: 100%;
  padding: calc(var(--search-h) + 40px) var(--panel-pad) var(--panel-pad) var(--panel-pad) !important;
  background: transparent !important; border: 0 !important; box-shadow: none !important;
  overflow: auto; -ms-overflow-style: none; scrollbar-width: none;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display: none; }

/* Aucune scrollbar interne + cards sans arrondi + espace resserré */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{ max-height:none !important; overflow:visible !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location::-webkit-scrollbar{ display:none !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ list-style:none; margin:0; padding:0; gap:12px; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-thumb img{ border-radius:0 !important; }

/* Barre de recherche = exactement la largeur des cards, sans arrondi */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  position:absolute; top:24px; right:var(--panel-pad);
  width: calc(var(--panel-w) - 2*var(--panel-pad)) !important;
  background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{ margin:0; padding:0; border:0; box-shadow:none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap label{ display:none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width:100% !important; height: var(--search-h); line-height: var(--search-h);
  padding:0 14px; box-sizing:border-box;
  border:1px solid #ddd !important; border-radius:0 !important; box-shadow:none !important;
}

/* Cacher le contrôle "Plan / Satellite" */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap .gm-style-mtc{ display:none !important; }

/* Responsive : panneau sous la carte */
@media (max-width:1024px){
  .elementor-34386 .elementor-element.elementor-element-7a4b378{ width:100% !important; margin-left:0; margin-right:0; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap{ position:relative; height:50vh !important; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{ position:relative; width:100%; height:auto; padding:16px !important; }
  .elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{ position:relative; top:0; right:0; width:100% !important; margin-bottom:12px; }
}

/* === Aligner la largeur des cards sur l'input === */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  --panel-w: 520px;          /* laisse comme tu as déjà */
  --panel-pad: 24px;         /* idem */
  --scrollbar-w: 16px;       /* compensation visuelle (Win ~16px, Mac = 0) */
}

/* Ajoute la compensation à droite pour le contenu scrollable */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  padding-right: calc(var(--panel-pad) + var(--scrollbar-w)) !important;
}

/* Les cards occupent 100% de la largeur utile */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{
  padding: 0 !important;
  margin: 0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

/* === ALIGNEMENT PARFAIT INPUT ⇄ CARDS (avec gutter de scrollbar) === */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  /* laisse --panel-w et --panel-pad comme déjà définis chez toi */
  --gutter: 16px; /* largeur de la scrollbar (Windows ≈16px ; macOS = 0px) */
}

/* 1) Réserve l'espace de la scrollbar dans le panneau + garde largeur stable */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  scrollbar-gutter: stable both-edges;                 /* réserve le gutter */
  padding-right: calc(var(--panel-pad) + var(--gutter)) !important;
}

/* 2) Donne à l'input exactement la largeur des cards (on retire le gutter aussi) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  width: calc(var(--panel-w) - 2*var(--panel-pad) - var(--gutter)) !important;
}

/* 3) Les cards occupent 100% de la largeur utile (sans marges parasites) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ padding:0 !important; margin:0 !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* === macOS : pas de gutter de scrollbar → mêmes largeurs input/cards === */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  --gutter: 0px !important;           /* aucune réserve pour la scrollbar */
}

/* le panneau n'ajoute pas de padding spécial à droite */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  padding-right: var(--panel-pad) !important;
  scrollbar-gutter: auto !important;  /* pas de réserve forcée */
}

/* l'input = EXACTEMENT la largeur des cards */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  right: var(--panel-pad) !important;
  width: calc(var(--panel-w) - 2*var(--panel-pad)) !important;
}

/* les cards utilisent 100% de la largeur utile */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ padding:0 !important; margin:0 !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* ===== ALIGNEMENT DUR : input = même largeur que les cards ===== */

/* 1) Panneau : largeur & paddings fixes */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  width: 520px !important;
  padding: 96px 24px 24px 24px !important;  /* top | right | bottom | left */
}

/* 2) Barre de recherche : placée à 24px du bord, largeur EXACTE des cards */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  right: 24px !important;
  width: 472px !important;                 /* 520 - 24 - 24 */
}

/* 3) Reset des marges/paddings du UL pour éviter tout décalage */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{
  margin: 0 !important;
  padding: 0 !important;
}

/* 4) Chaque card prend exactement la largeur utile (472px) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  width: 472px !important;                 /* = largeur de l'input */
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* 5) Pas de scrollbar visible nulle part */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{ 
  overflow: auto; -ms-overflow-style: none; scrollbar-width: none;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display: none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{
  max-height: none !important; overflow: visible !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location::-webkit-scrollbar{ display:none !important; }

/* ===== ALIGNEMENT DUR : input = même largeur que les cards ===== */

/* 1) Panneau : largeur & paddings fixes */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  width: 520px !important;
  padding: 96px 24px 24px 24px !important;  /* top | right | bottom | left */
}

/* 2) Barre de recherche : placée à 24px du bord, largeur EXACTE des cards */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  right: 24px !important;
  width: 472px !important;                 /* 520 - 24 - 24 */
}

/* 3) Reset des marges/paddings du UL pour éviter tout décalage */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{
  margin: 0 !important;
  padding: 0 !important;
}

/* 4) Chaque card prend exactement la largeur utile (472px) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  width: 472px !important;                 /* = largeur de l'input */
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* 5) Pas de scrollbar visible nulle part */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{ 
  overflow: auto; -ms-overflow-style: none; scrollbar-width: none;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display: none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{
  max-height: none !important; overflow: visible !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location::-webkit-scrollbar{ display:none !important; }

/* === SUPPRIMER L'ESPACE DE LA SCROLLBAR & ALIGNER LES LARGEURS === */

/* 1) Transforme la scrollbar en overlay (ne prend plus de largeur) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  /* overlay: la barre défile MAIS ne réserve plus d'espace de mise en page */
  /* WebKit (Chrome/Safari) */
  overflow: overlay !important;
  /* Firefox : aucune largeur de scrollbar */
  scrollbar-width: none !important;
  padding-right: 24px !important;   /* = même padding que le côté gauche */
}

/* WebKit : scrollbar réellement invisible et sans largeur */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
}

/* 2) Cards = exactement la largeur utile (identique à l'input) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{
  margin: 0 !important;
  padding: 0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  width: 100% !important;            /* occupe toute la largeur disponible */
  box-sizing: border-box !important;
  margin: 0 !important;
}

/* 3) Input = largeur des cards (rappel, panneau = 520px, padding 24px de chaque côté) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  right: 24px !important;
  width: calc(520px - 48px) !important;   /* 472px : même largeur que les cards */
}

/* === Alignement gauche : décale les cards vers la DROITE === */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  --nudge-right: 8px;   /* ajuste: 6–12px selon ton œil */
}

.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  position: relative;
  left: var(--nudge-right);                 /* pousse à droite */
  width: calc(100% - var(--nudge-right));   /* garde la même largeur visible */
  box-sizing: border-box;
}

/* ====== RESET largeur & overflow (pas de scroll horizontal) ====== */

/* Réglages : garde tes valeurs actuelles */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  --panel-w: 520px;    /* largeur du panneau droit */
  --panel-pad: 24px;   /* padding horizontal interne */
  --search-h: 46px;    /* hauteur input */
}

/* Panneau : pas d'overflow horizontal, scroll vertical uniquement */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  position: absolute; top: 0; right: 0;
  width: var(--panel-w);
  height: 100%;
  padding: calc(var(--search-h) + 40px) var(--panel-pad) var(--panel-pad) var(--panel-pad) !important;
  background: transparent !important; border: 0 !important; box-shadow: none !important;

  overflow-y: auto !important;     /* OK pour scroller vers le bas */
  overflow-x: hidden !important;   /* ← supprime la barre en bas */
  -ms-overflow-style: none;
  scrollbar-width: none;           /* scrollbar fine cachée (Firefox) */
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list::-webkit-scrollbar{ display:none; } /* Chrome/Safari */

/* UL sans marges/paddings parasites */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ margin:0 !important; padding:0 !important; }

/* Cards : largeur 100% du contenu utile, PAS de décalage left/right */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  position: static !important;       /* annule les anciens "nudges" */
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 0 12px 0 !important;     /* gap vertical */
  border-radius: 0 !important;
}

/* Pas de scrollbar interne dans chaque card */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location{
  max-height: none !important;
  overflow: visible !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list .wpsl-store-location::-webkit-scrollbar{ display:none !important; }

/* Barre de recherche : largeur = EXACTEMENT celle des cards */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  position: absolute;
  top: 24px;
  right: var(--panel-pad);
  width: calc(var(--panel-w) - 2*var(--panel-pad)) !important; /* = largeur cards */
  background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important;
}
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap form{ margin:0; padding:0; border:0; box-shadow:none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap label{ display:none; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-input{
  width: 100% !important;
  height: var(--search-h); line-height: var(--search-h);
  padding: 0 14px; box-sizing: border-box;
  border: 1px solid #ddd !important; border-radius: 0 !important; box-shadow: none !important;
}

/* Cache "Plan / Satellite" au besoin */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-gmap .gm-style-mtc{ display:none !important; }

/* === Réduction du panneau à 480px (tout se recalcule) === */
.elementor-34386 .elementor-element.elementor-element-7a4b378{
  --panel-w: 480px !important;   /* ← largeur du panneau (change si besoin) */
  --panel-pad: 24px !important;  /* garde le même padding interne */
}

/* Panneau = var(--panel-w) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list{
  width: var(--panel-w) !important;
  overflow-x: hidden !important;    /* pas de scroll horizontal */
}

/* Input = largeur exacte des cards (panneau - paddings) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-search-wrap{
  right: var(--panel-pad) !important;
  width: calc(var(--panel-w) - 2*var(--panel-pad)) !important;
}

/* Cards : prennent 100% de la largeur utile (pas de décalage) */
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list ul{ margin:0 !important; padding:0 !important; }
.elementor-34386 .elementor-element.elementor-element-7a4b378 #wpsl-result-list li,
.elementor-34386 .elementor-element.elementor-element-7a4b378 .bl-card{
  position: static !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 0 12px 0 !important;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-b0d4e6f *//* Layout map/list */
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-gmap { min-height: 72vh; border-radius: 16px; overflow: hidden; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-result-list { max-height: 72vh; overflow: auto; }

/* Si tu as activé mon snippet PHP (classes .bl-*) */
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-result-list ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-card { display: grid; grid-template-columns: 140px 1fr; gap: 16px; background: #fff; border-radius: 16px; box-shadow: 0 6px 20px rgba(0,0,0,.08); padding: 16px; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-title { margin: 0 0 6px; font-size: 18px; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-address, .elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-hours { margin: 0 0 10px; color:#555; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-btn { display:inline-block; padding:8px 12px; border-radius:10px; border:1px solid #ddd; text-decoration:none; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f .bl-btn-primary { border-color:transparent; background:#111; color:#fff; }

/* Fallback si tu n'as pas le snippet PHP */
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-result-list li { background:#fff; border-radius:16px; box-shadow:0 6px 20px rgba(0,0,0,.08); padding:16px; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-result-list h3 { margin:0 0 6px; font-size:18px; }

/* Formulaire */
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-search-wrap { margin: 0 0 16px; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-search-input,
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-search-btn { border-radius: 10px; }

/* Responsive */
@media (max-width: 1024px){
  .elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-wrap { grid-template-columns: 1fr; }
  .elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-result-list, 
  .elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-gmap { max-height: none; min-height: 50vh; }
}

/* Section plein écran et pleine largeur */
.elementor-34386 .elementor-element.elementor-element-b0d4e6f{
  position: relative; padding: 0 !important;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* Google Map plein écran dans la section */
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-wrap{ position: relative; min-height: 100vh; }
.elementor-34386 .elementor-element.elementor-element-b0d4e6f #wpsl-gmap{ position: absolute; inset: 0; width:100% !important; height:100% !important; }/* End custom CSS */