


/* ---- Grund-Panel dunkel ---- */
#asl-storelocator,
#asl-storelocator .asl-wrapper,
#asl-storelocator .asl-panel,
#asl-storelocator .asl_locator-panel,
#asl-storelocator .asl-panel-inner,
#asl-storelocator .asl-store-search,
#asl-storelocator .asl-cont{ background:var(--basl-bg) !important; color:var(--basl-text) !important; }
#asl-storelocator .asl-wrapper{ border:1px solid var(--basl-line) !important; border-radius:16px !important; overflow:hidden; }
#asl-storelocator,#asl-storelocator *{ font-family:'Inter',system-ui,sans-serif; }

/* ---- Suchfeld ---- */
#asl-storelocator .asl-store-search{ border-bottom:1px solid var(--basl-line) !important; }
#asl-storelocator .asl-search-address,
#asl-storelocator input.form-control{
	background:rgba(255,255,255,.05) !important; border:1px solid rgba(255,255,255,.18) !important;
	color:#fff !important; border-radius:10px !important; box-shadow:none !important; }
#asl-storelocator .asl-search-address::placeholder{ color:var(--basl-muted) !important; letter-spacing:.04em; }
/* Lupe / Such-Button -> weiß */
#asl-storelocator .asl-search-event,
#asl-storelocator .input-group-text{
	background:#fff !important; color:#0a0a0a !important; border:0 !important; border-radius:10px !important; }
#asl-storelocator .asl-search-event svg,
#asl-storelocator .asl-search-event path{ fill:#0a0a0a !important; stroke:#0a0a0a !important; }

/* ---- "Number of shops"-Leiste ---- */
#asl-storelocator .sl-head,
#asl-storelocator [class*="sl-head"],
#asl-storelocator .bottom-c{
	background:rgba(255,255,255,.06) !important; color:#fff !important; border:0 !important;
	border-top:1px solid var(--basl-line) !important; border-bottom:1px solid var(--basl-line) !important; }
#asl-storelocator .sl-head-title{ color:#fff !important; font-family:var(--basl-display) !important; letter-spacing:.14em !important; }

/* ---- Store-Liste ---- */
#asl-storelocator .asl-overflow,
#asl-storelocator .asl-results,
#asl-storelocator [class*="overflow"]{ background:var(--basl-bg) !important; }
#asl-storelocator .asl-single-store,
#asl-storelocator [class*="single-store"],
#asl-storelocator .asl-overflow > div{
	background:transparent !important; color:var(--basl-text) !important;
	border-bottom:1px solid var(--basl-line) !important; }
#asl-storelocator .asl-single-store:hover{ background:rgba(255,255,255,.03) !important; }
/* Titel / Name der Filiale weiß + Bebas */
#asl-storelocator .asl-single-store [class*="title"],
#asl-storelocator .asl-single-store [class*="name"],
#asl-storelocator [class*="store-title"],
#asl-storelocator [class*="store-name"]{ color:#fff !important; font-family:var(--basl-display) !important; letter-spacing:.04em !important; }
/* Icons (Pin/Uhr/Kalender) silbern statt blau */
#asl-storelocator .asl-single-store svg,
#asl-storelocator .asl-single-store i,
#asl-storelocator .asl-single-store path{ fill:var(--basl-muted) !important; color:var(--basl-muted) !important; }

/* ---- Buttons (Route planen) -> Marken-Stil ---- */
#asl-storelocator .btn-asl,
#asl-storelocator .s-direction,
#asl-storelocator a.btn{
	background:transparent !important; color:#fff !important; border:2px solid #fff !important;
	border-radius:255px 14px 235px 14px / 14px 235px 14px 255px !important;
	text-transform:uppercase !important; font-family:var(--basl-display) !important; letter-spacing:.08em !important;
	box-shadow:none !important; transition:background .2s,color .2s !important; }
#asl-storelocator .btn-asl:hover,
#asl-storelocator .s-direction:hover,
#asl-storelocator a.btn:hover{ background:#fff !important; color:#0a0a0a !important; }

/* ---- Scrollbar dezent ---- */
#asl-storelocator .asl-overflow::-webkit-scrollbar{ width:8px; }
#asl-storelocator .asl-overflow::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.18); border-radius:8px; }
#asl-storelocator .asl-overflow::-webkit-scrollbar-track{ background:transparent; }


/* ---- Höhere Spezifität: ASL setzt Input-BG weiß per !important (Load-Order) ---- */
html body #asl-storelocator input.asl-search-address,
html body #asl-storelocator .asl-store-search input,
html body #asl-storelocator input.form-control{
	background:rgba(255,255,255,.06) !important; color:#fff !important;
	-webkit-text-fill-color:#fff !important; border:1px solid rgba(255,255,255,.20) !important; }
html body #asl-storelocator input.asl-search-address::placeholder,
html body #asl-storelocator .asl-store-search input::placeholder{ color:#9a9aa1 !important; -webkit-text-fill-color:#9a9aa1 !important; }


/* ---- NUKLEAR: ASL setzt Input-BG via sehr spezifischer Regel
   (#asl-storelocator.asl-cont.no-asl-filters .asl-wrapper .sl-main-cont ...).
   Mit ZWEI IDs (Container-ID + Input-ID) gewinnen wir sicher. ---- */
#asl-storelocator #auto-complete-search,
#asl-storelocator input#auto-complete-search{
	background:rgba(255,255,255,.06) !important; color:#fff !important;
	-webkit-text-fill-color:#fff !important; border:1px solid rgba(255,255,255,.20) !important;
	border-radius:10px !important; }
#asl-storelocator #auto-complete-search::placeholder{ color:#9a9aa1 !important; -webkit-text-fill-color:#9a9aa1 !important; }
/* Such-Container/Form-Control allgemein im ASL dunkel (höhere Spezifität als ASL) */
#asl-storelocator.asl-cont .asl-wrapper .asl-store-search input,
#asl-storelocator.asl-cont .asl-wrapper .sl-main-cont input{
	background:rgba(255,255,255,.06) !important; color:#fff !important; -webkit-text-fill-color:#fff !important; }

/* ===================================================================
   ROBUSTER DARK-OVERRIDE — ASL nutzt sehr spezifische !important-Regeln
   auf vielen Innen-Elementen (.inside.search_filter, .sl-item, blaue
   Leiste, .sl-loading ...). Statt jede einzeln zu jagen: das GESAMTE
   linke Panel dunkel + alle Innen-Hintergründe transparent (= Panel
   scheint durch). Buttons/Inputs/Links/SVG/Bilder ausgenommen.
   Karte (.asl-map) liegt AUSSERHALB von .asl_locator-panel -> unberührt.
   =================================================================== */
#asl-storelocator.asl-cont .asl_locator-panel{ background:#0e0e11 !important; }
#asl-storelocator.asl-cont .asl_locator-panel *:not(input):not(button):not(a):not(svg):not(path):not(img):not(.sl-item):not(.btn-asl):not(.s-direction):not(.asl-search-event):not(.input-group-text){
	background-color:transparent !important; background-image:none !important; }
/* Listeneinträge: dezenter Trenner + heller Text */
#asl-storelocator.asl-cont .sl-item{ border-bottom:1px solid rgba(255,255,255,.08) !important; }
#asl-storelocator.asl-cont .sl-item,
#asl-storelocator.asl-cont .sl-item *{ color:#c6c6cc !important; }
#asl-storelocator.asl-cont .sl-item [class*="title"],
#asl-storelocator.asl-cont .sl-item [class*="name"],
#asl-storelocator.asl-cont .sl-item h1,#asl-storelocator.asl-cont .sl-item h2,
#asl-storelocator.asl-cont .sl-item h3,#asl-storelocator.asl-cont .sl-item h4{ color:#fff !important; }
/* "Number of shops"-Leiste: heller Text auf dunkel */
#asl-storelocator.asl-cont .sl-head-title,
#asl-storelocator.asl-cont [class*="sl-head"]{ color:#fff !important; }


/* ---- Höhe größer + sauber integriert ---- */
#asl-storelocator .asl-wrapper,
#asl-storelocator .asl_locator-panel,
#asl-storelocator .asl-map,
#asl-storelocator .asl-map-canv,
#asl-storelocator #asl-map-canv{ height:640px !important; min-height:640px !important; }
/* die scrollbare Filialliste an die größere Höhe anpassen */
#asl-storelocator .asl-overflow,
#asl-storelocator [class*="overflow"]{ max-height:520px !important; }
/* Such-Lupe / Such-Button: grauer */
#asl-storelocator .asl-search-event,
#asl-storelocator .input-group-text{ background:#7d7d85 !important; }
#asl-storelocator .asl-search-event svg,
#asl-storelocator .asl-search-event path,
#asl-storelocator .input-group-text svg,
#asl-storelocator .input-group-text path{ fill:#fff !important; stroke:#fff !important; }

/* ============ ALLES LINKS WEISS + VIEL GRÖSSER ============ */
#asl-storelocator.asl-cont .asl_locator-panel,
#asl-storelocator.asl-cont .asl_locator-panel *,
#asl-storelocator.asl-cont .sl-item,
#asl-storelocator.asl-cont .sl-item *,
#asl-storelocator.asl-cont .sl-head-title,
#asl-storelocator.asl-cont .inside,
#asl-storelocator.asl-cont .search_filter *{ color:#fff !important; -webkit-text-fill-color:#fff !important; }
/* Icons hell statt blau */
#asl-storelocator.asl-cont .sl-item svg,
#asl-storelocator.asl-cont .sl-item i,
#asl-storelocator.asl-cont .sl-item path{ fill:#fff !important; color:#fff !important; }

/* Schriftgrößen deutlich hoch */
#asl-storelocator.asl-cont .asl_locator-panel{ font-size:18px !important; }
#asl-storelocator.asl-cont .asl_locator-panel .inside,
#asl-storelocator.asl-cont .search_filter,
#asl-storelocator.asl-cont .search_filter *{ font-size:18px !important; }
#asl-storelocator .asl-search-address,
#asl-storelocator #auto-complete-search{ font-size:19px !important; height:auto !important; padding:16px 16px !important; }
#asl-storelocator.asl-cont .sl-head-title{ font-size:23px !important; letter-spacing:.1em !important; }
#asl-storelocator.asl-cont .sl-item,
#asl-storelocator.asl-cont .sl-item *{ font-size:18px !important; line-height:1.5 !important; }
#asl-storelocator.asl-cont .sl-item [class*="title"],
#asl-storelocator.asl-cont .sl-item [class*="name"],
#asl-storelocator.asl-cont .sl-item h1,#asl-storelocator.asl-cont .sl-item h2,
#asl-storelocator.asl-cont .sl-item h3,#asl-storelocator.asl-cont .sl-item h4{ font-size:28px !important; line-height:1.1 !important; }
#asl-storelocator .btn-asl,
#asl-storelocator .s-direction{ font-size:19px !important; padding:14px 26px !important; }

/* ============ JEDE FILIALE ALS EIGENE KARTE ============ */
#asl-storelocator.asl-cont .sl-list-wrapper .sl-item,
#asl-storelocator.asl-cont .sl-list .sl-item,
#asl-storelocator.asl-cont ul.sl-list .sl-item{
	background-color:rgba(255,255,255,.05) !important;
	border:1px solid rgba(255,255,255,.16) !important;
	border-radius:16px !important;
	margin:0 14px 18px !important;
	padding:22px 22px !important;
	box-shadow:0 6px 18px rgba(0,0,0,.25) !important; }
#asl-storelocator.asl-cont .sl-list-wrapper .sl-item:hover,
#asl-storelocator.asl-cont .sl-list .sl-item:hover{
	background-color:rgba(255,255,255,.08) !important; border-color:rgba(255,255,255,.34) !important; }
#asl-storelocator.asl-cont .sl-list-wrapper .sl-item:first-child{ margin-top:0 !important; }
/* Abstand zwischen den Karten sicher per flex-gap (margin wird von ASL überschrieben) */
#asl-storelocator.asl-cont .sl-list,
#asl-storelocator.asl-cont ul.sl-list,
#asl-storelocator.asl-cont .sl-list-wrapper > ul{
	display:flex !important; flex-direction:column !important; gap:16px !important;
	padding:14px !important; margin:0 !important; list-style:none !important; }

/* ============ LISTE SICHER SCROLLBAR ============ */
#asl-storelocator .sl-main-cont-box{ overflow-y:auto !important; overscroll-behavior:contain !important;
	-webkit-overflow-scrolling:touch !important; max-height:540px !important; }
#asl-storelocator .sl-main-cont-box::-webkit-scrollbar{ width:9px; }
#asl-storelocator .sl-main-cont-box::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.25); border-radius:8px; }

/* =================================================================
   MAP-POPUP — WEISS, GROSSE TEXTE, RICHTIGE BUTTONS.
   ASL-Default-Optik bleibt weiss, wir polishen sie nur:
   - Etwas mehr Padding
   - Subtiler Schlagschatten, abgerundete Ecken
   - Texte deutlich groesser
   - Direction/Zoom als richtige Pill-Buttons mit Hover
   ================================================================= */

.infoBox{
  border-radius:14px !important;
  box-shadow:0 18px 50px rgba(0,0,0,.28) !important;
  padding:22px 24px 20px !important;
  min-width:300px !important;
  max-width:440px !important;
}

/* Titel deutlich groesser */
.infoBox h3{
  font-size:22px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  margin:0 36px 14px 0 !important;
  color:#15151c !important;
}

/* Adresse darunter */
.infoBox .sl-tag{
  font-size:16px !important;
  line-height:1.5 !important;
  color:#4a4a55 !important;
  display:block !important;
  margin:0 0 16px !important;
}

/* Trenner-Linie vor dem Detail-Block */
.infoBox .info-addr{
  border-top:1px solid #e5e5ea !important;
  padding-top:14px !important;
  margin-top:6px !important;
}

/* Detail-Zeilen (Distanz, Telefon, Zeit, Tage) */
.infoBox .info-addr-inner{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding:9px 0 !important;
  font-size:16px !important;
  line-height:1.4 !important;
  color:#2a2a34 !important;
}

/* Icons - graublau, etwas groesser */
.infoBox .info-addr-inner i{
  font-size:18px !important;
  color:#7a7a85 !important;
  flex:0 0 22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Werte/Links - fett */
.infoBox .info-addr-inner a,
.infoBox .info-addr-inner .txt-hours,
.infoBox .info-addr-inner span{
  font-size:16px !important;
  font-weight:600 !important;
  color:#15151c !important;
  text-decoration:none !important;
}
.infoBox .info-addr-inner a:hover{
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}

/* Button-Bar unten (Direction / Zoom) */
.infoBox .asl-buttons,
.infoBox .asl-btn-full{
  display:flex !important;
  gap:10px !important;
  margin-top:18px !important;
  padding-top:16px !important;
  border-top:1px solid #e5e5ea !important;
  justify-content:center !important;
}
.infoBox .asl-buttons:empty,
.infoBox .asl-btn-full:empty{ display:none !important; }

/* Direction + Zoom als richtige Pill-Buttons */
.infoBox .asl-buttons a,
.infoBox .asl-buttons button,
.infoBox .asl-btn-full a,
.infoBox .asl-btn-full button{
  flex:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:13px 22px !important;
  background:#15151c !important;
  color:#ffffff !important;
  border:0 !important;
  border-radius:999px !important;
  font-size:15px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  cursor:pointer !important;
  transition:background .2s ease, transform .2s ease !important;
  line-height:1 !important;
  box-shadow:none !important;
}
.infoBox .asl-buttons a:hover,
.infoBox .asl-buttons button:hover,
.infoBox .asl-btn-full a:hover,
.infoBox .asl-btn-full button:hover{
  background:#000000 !important;
  color:#ffffff !important;
  transform:translateY(-2px) !important;
}
.infoBox .asl-buttons a:hover *,
.infoBox .asl-buttons button:hover *,
.infoBox .asl-btn-full a:hover *,
.infoBox .asl-btn-full button:hover *{
  color:#ffffff !important;
  fill:#ffffff !important;
}

/* Close-X groesser + besser klickbar */
.infoBox > img[src*="cross.png"]{
  top:12px !important;
  right:12px !important;
  width:28px !important;
  height:28px !important;
  padding:6px !important;
  background:rgba(0,0,0,.06) !important;
  border-radius:50% !important;
  cursor:pointer !important;
  transition:background .18s ease, transform .18s ease !important;
  box-sizing:border-box !important;
}
.infoBox > img[src*="cross.png"]:hover{
  background:rgba(0,0,0,.14) !important;
  transform:scale(1.08) !important;
}

/* Optionale Beschreibung */
.infoBox .short-desc{
  font-size:15px !important;
  line-height:1.5 !important;
  color:#4a4a55 !important;
  margin:14px 0 0 !important;
}

/* Mobile */
@media (max-width:720px){
  .infoBox{ padding:18px 18px 16px !important; min-width:280px !important; max-width:320px !important; }
  .infoBox h3{ font-size:19px !important; margin:0 30px 12px 0 !important; }
  .infoBox .sl-tag{ font-size:14px !important; }
  .infoBox .info-addr-inner{ font-size:14px !important; }
  .infoBox .info-addr-inner a,
  .infoBox .info-addr-inner .txt-hours{ font-size:14px !important; }
  .infoBox .asl-buttons a,
  .infoBox .asl-buttons button{ padding:11px 16px !important; font-size:13px !important; }
}

/* =================================================================
   POPUP FIX — Verhindert die "doppelte Box".
   Nur .infoBox selbst hat weissen Container-Look. ALLE inneren
   Elemente bekommen explizit KEINEN BG, KEINEN Schatten, KEINE Rundung.
   ================================================================= */
html body .infoBox > *,
html body .infoBox > * > *,
html body .infoBox h3,
html body .infoBox .infowindowContent,
html body .infoBox .sl-addr-sec,
html body .infoBox .info-addr,
html body .infoBox .info-addr-inner,
html body .infoBox .image_map_popup,
html body .infoBox .img_box,
html body .infoBox .short-desc,
html body .infoBox .asl-buttons,
html body .infoBox .asl-btn-full{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

/* Logo-Placeholder hart verstecken (auch wenn nicht display:none gesetzt) */
html body .infoBox .image_map_popup,
html body .infoBox .img_box{
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

/* H3 sicher als simpler Heading - kein Block-Wrapper-Look */
html body .infoBox h3{
  margin:0 36px 14px 0 !important;
  padding:0 !important;
  border:0 !important;
  display:block !important;
}

/* InfoBox NICHT als float - vermeidet versetzte 2.Box bei manchen Browsern */
html body .infoBox{
  display:block !important;
  position:absolute !important;
  float:none !important;
}

/* =================================================================
   POPUP V2 POLISH — weisser BG durchgehend, kompakter, sauberer
   ================================================================= */

/* Wichtigster Fix: BG durchgehend weiss erzwingen */
html body .infoBox{
  background-color:#ffffff !important;
  background-image:none !important;
  border:1px solid #e5e5ea !important;
  padding:20px 22px 18px !important;
  max-width:380px !important;
  min-width:280px !important;
}

/* Padding pro Detail-Zeile kompakter */
html body .infoBox .info-addr-inner{
  padding:7px 0 !important;
  gap:10px !important;
}

/* Trenner enger */
html body .infoBox .info-addr{
  padding-top:10px !important;
  margin-top:4px !important;
}

/* Titel etwas kompakter */
html body .infoBox h3{
  font-size:20px !important;
  margin:0 32px 10px 0 !important;
  line-height:1.2 !important;
}

/* Adresse enger */
html body .infoBox .sl-tag{
  margin:0 0 12px !important;
}

/* Button-Bar enger */
html body .infoBox .asl-buttons,
html body .infoBox .asl-btn-full{
  margin-top:14px !important;
  padding-top:12px !important;
  gap:8px !important;
}

/* Buttons selbst etwas kompakter */
html body .infoBox .asl-buttons a,
html body .infoBox .asl-buttons button,
html body .infoBox .asl-btn-full a,
html body .infoBox .asl-btn-full button{
  padding:11px 18px !important;
  font-size:14px !important;
}

/* Schatten subtiler */
html body .infoBox{
  box-shadow:0 12px 36px rgba(0,0,0,.18), 0 2px 6px rgba(0,0,0,.06) !important;
}

/* Icons-Container fixe Breite, vermeidet riesigen Gap */
html body .infoBox .info-addr-inner i{
  flex:0 0 20px !important;
  width:20px !important;
  font-size:17px !important;
}

/* =================================================================
   POPUP V3 — Specificity-Hammer fuer Schriftgroessen
   + deutlich kompakter (Hoehe reduziert)
   ================================================================= */

/* Doubled-class + Container-Parent = sehr hohe Specificity (0,5,2) */
html body .asl-cont .infoBox.infoBox{
  padding:16px 18px 14px !important;
  max-width:360px !important;
}
html body .asl-cont .infoBox.infoBox h3{
  font-size:24px !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  margin:0 32px 8px 0 !important;
  letter-spacing:-.01em !important;
}
html body .asl-cont .infoBox.infoBox .sl-tag{
  font-size:15px !important;
  line-height:1.45 !important;
  margin:0 0 8px !important;
}
html body .asl-cont .infoBox.infoBox .info-addr{
  padding-top:8px !important;
  margin-top:2px !important;
}
html body .asl-cont .infoBox.infoBox .info-addr-inner{
  padding:5px 0 !important;
  font-size:15px !important;
  gap:10px !important;
}
html body .asl-cont .infoBox.infoBox .info-addr-inner i{
  font-size:17px !important;
  flex:0 0 20px !important;
}
html body .asl-cont .infoBox.infoBox .info-addr-inner a,
html body .asl-cont .infoBox.infoBox .info-addr-inner .txt-hours,
html body .asl-cont .infoBox.infoBox .info-addr-inner span{
  font-size:15px !important;
  font-weight:700 !important;
}
html body .asl-cont .infoBox.infoBox .asl-buttons,
html body .asl-cont .infoBox.infoBox .asl-btn-full{
  margin-top:10px !important;
  padding-top:10px !important;
}
html body .asl-cont .infoBox.infoBox .asl-buttons a,
html body .asl-cont .infoBox.infoBox .asl-buttons button,
html body .asl-cont .infoBox.infoBox .asl-btn-full a,
html body .asl-cont .infoBox.infoBox .asl-btn-full button{
  padding:10px 16px !important;
  font-size:13px !important;
}

/* Popup breiter machen damit Titel nicht umbricht */
html body .asl-cont .infoBox.infoBox{
  max-width:440px !important;
  min-width:340px !important;
  width:auto !important;
}


/* =================================================================
   FONT-OVERRIDES AUS — Customizer-Werte sollen greifen
   ================================================================= */
html body .asl-cont .infoBox.infoBox h3,
html body .asl-cont .infoBox.infoBox .sl-tag,
html body .asl-cont .infoBox.infoBox .info-addr-inner,
html body .asl-cont .infoBox.infoBox .info-addr-inner i,
html body .asl-cont .infoBox.infoBox .info-addr-inner a,
html body .asl-cont .infoBox.infoBox .info-addr-inner .txt-hours,
html body .asl-cont .infoBox.infoBox .info-addr-inner span{
  font-size:unset !important;
}


/* =================================================================
   ROUTE PLANEN BUTTON SIDEBAR — Hover-Text-Fix verstaerken
   ================================================================= */
html body #asl-storelocator .sl-item .btn-asl,
html body #asl-storelocator .sl-item .s-direction,
html body #asl-storelocator .sl-item a.btn{
  color:#ffffff !important;
}
html body #asl-storelocator .sl-item .btn-asl span,
html body #asl-storelocator .sl-item .btn-asl *,
html body #asl-storelocator .sl-item .s-direction *{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
}
html body #asl-storelocator .sl-item .btn-asl:hover,
html body #asl-storelocator .sl-item .s-direction:hover,
html body #asl-storelocator .sl-item a.btn:hover{
  background:#ffffff !important;
  color:#0a0a0a !important;
  border-color:#ffffff !important;
}
html body #asl-storelocator .sl-item .btn-asl:hover *,
html body #asl-storelocator .sl-item .s-direction:hover *,
html body #asl-storelocator .sl-item a.btn:hover *{
  color:#0a0a0a !important;
  -webkit-text-fill-color:#0a0a0a !important;
}

/* =================================================================
   SPERRE WIEDER AKTIVIEREN BUTTON — groesser, unten mittig, Hover-Schatten
   ================================================================= */
html body .basl-lock-relock{
  top:auto !important;
  right:auto !important;
  bottom:24px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  padding:14px 28px !important;
  font-size:14px !important;
  letter-spacing:.2em !important;
  gap:10px !important;
  border-width:2px !important;
}
html body .basl-lock-relock svg{
  flex:0 0 18px !important;
  width:18px !important;
  height:18px !important;
}
html body .basl-lock-relock:hover{
  background:#ffffff !important;
  color:#0a0a0a !important;
  border-color:#ffffff !important;
  transform:translateX(-50%) translateY(-3px) !important;
  box-shadow:0 14px 36px rgba(0,0,0,.55), 0 4px 10px rgba(0,0,0,.35) !important;
}


/* =================================================================
   FIXES v2.53 — Fonts zurueck, Hover-Bug, Direction-Screen,
   Karte-aktivieren einladender, Suchleiste polish
   ================================================================= */

/* 1) FONTS ZURUECK — Customizer hat nicht gegriffen */
html body .asl-cont .infoBox.infoBox h3{ font-size:24px !important; font-weight:800 !important; line-height:1.15 !important; }
html body .asl-cont .infoBox.infoBox .sl-tag{ font-size:15px !important; line-height:1.5 !important; }
html body .asl-cont .infoBox.infoBox .info-addr-inner{ font-size:15px !important; }
html body .asl-cont .infoBox.infoBox .info-addr-inner i{ font-size:17px !important; }
html body .asl-cont .infoBox.infoBox .info-addr-inner a,
html body .asl-cont .infoBox.infoBox .info-addr-inner .txt-hours,
html body .asl-cont .infoBox.infoBox .info-addr-inner span{ font-size:15px !important; font-weight:700 !important; }

/* 2) ROUTE PLANEN SIDEBAR — Hover Text wirklich schwarz (Specificity-Hammer) */
html body #asl-storelocator.asl-cont .sl-item .btn-asl,
html body #asl-storelocator.asl-cont .sl-item .s-direction,
html body #asl-storelocator.asl-cont .sl-item a.btn{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
html body #asl-storelocator.asl-cont .sl-item .btn-asl:hover,
html body #asl-storelocator.asl-cont .sl-item .s-direction:hover,
html body #asl-storelocator.asl-cont .sl-item a.btn:hover{
  background:#ffffff !important;
  color:#0a0a0a !important;
  -webkit-text-fill-color:#0a0a0a !important;
}
html body #asl-storelocator.asl-cont .sl-item .btn-asl:hover,
html body #asl-storelocator.asl-cont .sl-item .btn-asl:hover *,
html body #asl-storelocator.asl-cont .sl-item .s-direction:hover,
html body #asl-storelocator.asl-cont .sl-item .s-direction:hover *,
html body #asl-storelocator.asl-cont .sl-item a.btn:hover,
html body #asl-storelocator.asl-cont .sl-item a.btn:hover *{
  color:#0a0a0a !important;
  -webkit-text-fill-color:#0a0a0a !important;
}

/* 3) DIRECTION-SCREEN-LAYOUT — Routing-Liste sauber, alte Sidebar verstecken */
html body #asl-storelocator.in-direction .sl-list-wrapper,
html body #asl-storelocator.in-direction .sl-list,
html body #asl-storelocator.in-direction .sl-item{
  display:none !important;
}
/* Direction-Container */
html body #asl-storelocator .sl-direction-cont,
html body #asl-storelocator [class*="direction-cont"],
html body #asl-storelocator .asl-direction-panel{
  background:transparent !important;
  padding:14px !important;
}
/* "Richtung speichern" Heading */
html body #asl-storelocator [class*="direction"] h1,
html body #asl-storelocator [class*="direction"] h2,
html body #asl-storelocator [class*="direction"] h3,
html body #asl-storelocator [class*="direction"] [class*="head"]{
  color:#ffffff !important;
  font-family:'Bebas Neue','Anton',Impact,sans-serif !important;
  font-size:18px !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  margin:0 0 14px !important;
  padding:0 0 12px !important;
  border-bottom:1px solid rgba(255,255,255,.15) !important;
}
/* Routing-Schritte */
html body #asl-storelocator [class*="direction"] [class*="step"],
html body #asl-storelocator .adp-substep,
html body #asl-storelocator [class*="dir-row"]{
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:10px !important;
  padding:10px 12px !important;
  margin:0 0 6px !important;
  color:#e0e0e6 !important;
  font-size:13px !important;
}
html body #asl-storelocator [class*="direction"] *{
  color:#e0e0e6 !important;
}
/* Zurueck-Button im Direction-Modus (falls vorhanden) */
html body #asl-storelocator [class*="direction"] .back-btn,
html body #asl-storelocator [class*="direction"] [class*="back"]{
  background:#ffffff !important;
  color:#0a0a0a !important;
  border:0 !important;
  border-radius:999px !important;
  padding:10px 22px !important;
  font-family:'Bebas Neue','Anton',Impact,sans-serif !important;
  font-size:13px !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
}

/* 4) SUCHLEISTE OBEN — moderner Look */
html body #asl-storelocator.asl-cont .asl-store-search{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  margin:0 0 16px !important;
}
html body #asl-storelocator.asl-cont .asl-store-search input,
html body #asl-storelocator.asl-cont input#auto-complete-search{
  background:rgba(255,255,255,.06) !important;
  border:1.5px solid rgba(255,255,255,.20) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border-radius:999px !important;
  padding:14px 50px 14px 22px !important;
  font-size:14px !important;
  font-family:'Inter',system-ui,sans-serif !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  transition:border-color .2s ease, background .2s ease !important;
}
html body #asl-storelocator.asl-cont .asl-store-search input:focus{
  border-color:rgba(255,255,255,.5) !important;
  background:rgba(255,255,255,.10) !important;
  outline:none !important;
}
/* Lupen-Such-Button rechts */
html body #asl-storelocator.asl-cont .asl-search-event,
html body #asl-storelocator.asl-cont .input-group-text{
  background:#ffffff !important;
  border:0 !important;
  border-radius:50% !important;
  width:38px !important;
  height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-left:6px !important;
  cursor:pointer !important;
  transition:background .2s ease, transform .2s ease !important;
}
html body #asl-storelocator.asl-cont .asl-search-event:hover,
html body #asl-storelocator.asl-cont .input-group-text:hover{
  background:#e0e0e6 !important;
  transform:scale(1.05) !important;
}
html body #asl-storelocator.asl-cont .asl-search-event svg path,
html body #asl-storelocator.asl-cont .input-group-text svg path{
  fill:#0a0a0a !important;
  stroke:#0a0a0a !important;
}
/* Clear-X im Input */
html body #asl-storelocator.asl-cont .asl-search-address ~ .clear-input,
html body #asl-storelocator.asl-cont .asl-store-search .clear-input{
  color:#9a9aa0 !important;
}


/* SUCHLEISTE OBEN — Lupe innerhalb des Inputs, nicht daneben */
html body #asl-storelocator.asl-cont .asl-store-search{
  position:relative !important;
}
html body #asl-storelocator.asl-cont .asl-store-search input{
  padding-right:56px !important;
  width:100% !important;
}
html body #asl-storelocator.asl-cont .asl-search-event,
html body #asl-storelocator.asl-cont .input-group-text{
  position:absolute !important;
  right:6px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  margin:0 !important;
  width:36px !important;
  height:36px !important;
}

/* POPUP TEXTE WIRKLICH GROSS */
html body .asl-cont .infoBox.infoBox h3,
html body .asl-cont .infoBox.infoBox h3 *{
  font-size:26px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
}
html body .asl-cont .infoBox.infoBox .sl-tag{
  font-size:18px !important;
  line-height:1.45 !important;
  font-weight:500 !important;
}
html body .asl-cont .infoBox.infoBox .info-addr-inner,
html body .asl-cont .infoBox.infoBox .info-addr-inner *{
  font-size:17px !important;
}
html body .asl-cont .infoBox.infoBox .info-addr-inner i{
  font-size:19px !important;
}

/* SPERRE-BUTTON im Stil der Sidebar-Buttons (outline weiss auf transparent) */
html body .basl-lock-relock{
  background:transparent !important;
  color:#ffffff !important;
  border:2px solid #ffffff !important;
  border-radius:255px 14px 235px 14px / 14px 235px 14px 255px !important;
  padding:12px 22px !important;
  font-family:'Bebas Neue','Anton',Impact,sans-serif !important;
  font-size:13px !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  transition:background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}
html body .basl-lock-relock:hover{
  background:#ffffff !important;
  color:#0a0a0a !important;
  border-color:#ffffff !important;
  box-shadow:0 8px 26px rgba(0,0,0,.45) !important;
}
html body .basl-lock-relock:hover *{
  color:#0a0a0a !important;
  -webkit-text-fill-color:#0a0a0a !important;
}

/* WEBSITE-BUTTON im Popup ausblenden (3. Button) */
html body .asl-cont .infoBox.infoBox .asl-buttons a[href^="http"]:not([href*="google"]):not([href*="maps"]),
html body .asl-cont .infoBox.infoBox .asl-buttons a:nth-child(3),
html body .asl-cont .infoBox.infoBox .asl-buttons .website,
html body .asl-cont .infoBox.infoBox .asl-buttons [class*="website"],
html body .asl-cont .infoBox.infoBox .asl-buttons [class*="web"]{
  display:none !important;
}


/* KM/MEILEN-Radios komplett ausblenden — ECHTE Klassen */
html body .agile-modal .sl-form-group.mb-0:has(input[name="dist-type"]),
html body .agile-modal label.checkbox-inline[for="rbtn-km"],
html body .agile-modal label.checkbox-inline[for="rbtn-mile"],
html body .agile-modal input[name="dist-type"]{
  display:none !important;
}


/* SUCHLEISTE LUPE HOVER FIX — translateY beibehalten */
html body #asl-storelocator.asl-cont .asl-search-event,
html body #asl-storelocator.asl-cont .input-group-text{
  transform:translateY(-50%) !important;
}
html body #asl-storelocator.asl-cont .asl-search-event:hover,
html body #asl-storelocator.asl-cont .input-group-text:hover{
  transform:translateY(-50%) scale(1.06) !important;
}

/* CLEAR-X-Button in der Suchleiste — sauber stylen */
html body #asl-storelocator.asl-cont .asl-search-clr,
html body #asl-storelocator.asl-cont .asl-clear-btn{
  position:absolute !important;
  right:50px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  background:transparent !important;
  border:0 !important;
  padding:6px !important;
  width:28px !important;
  height:28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  border-radius:50% !important;
  transition:background .15s ease !important;
}
html body #asl-storelocator.asl-cont .asl-search-clr:hover,
html body #asl-storelocator.asl-cont .asl-clear-btn:hover{
  background:rgba(255,255,255,.12) !important;
  transform:translateY(-50%) scale(1.1) !important;
}
html body #asl-storelocator.asl-cont .asl-search-clr svg path,
html body #asl-storelocator.asl-cont .asl-clear-btn svg path{
  fill:#9a9aa5 !important;
}

/* SPERRE-BUTTON SICHTBAR auf hellem Map-Hintergrund */
html body .basl-lock-relock{
  background:rgba(15,15,18,.85) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  backdrop-filter:blur(8px) !important;
  box-shadow:0 6px 18px rgba(0,0,0,.35) !important;
}
html body .basl-lock-relock:hover{
  background:#ffffff !important;
  color:#0a0a0a !important;
  border-color:#ffffff !important;
  box-shadow:0 10px 26px rgba(0,0,0,.5) !important;
}

/* DIRECTION-MODE — wenn Direction-Liste angezeigt wird, alte Sidebar ausblenden */
html body #asl-storelocator:has(.sl-direction-cont:not([style*="display:none"])) .asl-store-search,
html body #asl-storelocator:has(.sl-direction-cont:not([style*="display:none"])) .sl-list-wrapper,
html body #asl-storelocator:has(.sl-direction-cont:not([style*="display:none"])) .bottom-c,
html body #asl-storelocator:has(.adp-placemark) .asl-store-search,
html body #asl-storelocator:has(.adp-placemark) .sl-list-wrapper,
html body #asl-storelocator:has(.adp-placemark) .bottom-c{
  display:none !important;
}
/* Direction Container groesser + sauber sichtbar */
html body #asl-storelocator .sl-direction-cont,
html body #asl-storelocator .adp,
html body #asl-storelocator .adp-list{
  background:transparent !important;
  color:#ffffff !important;
  padding:14px !important;
}
html body #asl-storelocator .adp *,
html body #asl-storelocator .sl-direction-cont *{
  color:#e0e0e6 !important;
}
html body #asl-storelocator .adp-summary,
html body #asl-storelocator .adp-listsel{
  font-family:'Bebas Neue','Anton',Impact,sans-serif !important;
  font-size:16px !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  color:#ffffff !important;
  margin-bottom:12px !important;
}


/* Nur KM/Meilen-Auswahl ausblenden
/* =================================================================
   v2.56.1 — Modal-Input lesbar + Direction-Panel sauber
   ================================================================= */

/* MODAL: Inputs schwarz auf hell (war weiss-auf-fast-transparent) */
html body .agile-modal input[type="text"],
html body .agile-modal input.form-control,
html body .agile-modal .frm-place,
html body .agile-modal .directions-to{
  background-color:#f4f4f7 !important;
  color:#15151c !important;
  -webkit-text-fill-color:#15151c !important;
  border:1.5px solid #d8d8e0 !important;
}
html body .agile-modal input::placeholder,
html body .agile-modal input.form-control::placeholder{
  color:#9a9aa5 !important;
  -webkit-text-fill-color:#9a9aa5 !important;
}

/* DIRECTION-PANEL: alte Sidebar verstecken wenn Direction sichtbar */
html body #asl-storelocator:has(.directions-cont:not(.hide)) .sl-list-wrapper,
html body #asl-storelocator:has(.directions-cont:not(.hide)) .sl-list,
html body #asl-storelocator:has(.directions-cont:not(.hide)) .asl-store-search,
html body #asl-storelocator:has(.directions-cont:not(.hide)) .bottom-c,
html body #asl-storelocator:has(.directions-cont:not(.hide)) .sl-head,
html body #asl-storelocator:has(.directions-cont:not(.hide)) [class*="sl-head"]{
  display:none !important;
}

/* DIRECTION-CONTAINER selbst */
html body .directions-cont:not(.hide){
  padding:18px !important;
  background:transparent !important;
  color:#ffffff !important;
}
html body .rendered-directions,
html body .rendered-directions *{
  color:#e0e0e6 !important;
  -webkit-text-fill-color:#e0e0e6 !important;
}
html body .rendered-directions h1,
html body .rendered-directions h2,
html body .rendered-directions h3,
html body .rendered-directions h4,
html body .rendered-directions strong{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-family:'Bebas Neue','Anton',Impact,sans-serif !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  font-weight:400 !important;
  margin:0 0 10px !important;
}
/* Routing-Tabelle */
html body .rendered-directions table{
  width:100% !important;
  border-collapse:collapse !important;
  margin:0 !important;
}
html body .rendered-directions td,
html body .rendered-directions th{
  padding:10px 12px !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  font-size:13px !important;
  line-height:1.4 !important;
  vertical-align:top !important;
}
/* Close-Direction-Button oben rechts */
html body .close-directions{
  background:rgba(255,255,255,.14) !important;
  color:#ffffff !important;
  width:32px !important;
  height:32px !important;
  border-radius:50% !important;
  border:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  position:absolute !important;
  top:14px !important;
  right:14px !important;
  z-index:5 !important;
}
html body .close-directions:hover{
  background:rgba(255,255,255,.28) !important;
}

/* =================================================================
   ID-HAMMER fuer Modal-Inputs (frm-lbl, to-lbl) — ID schlaegt Klasse
   ================================================================= */
html body input#frm-lbl,
html body input#to-lbl,
html body #frm-lbl,
html body #to-lbl{
  background:#f4f4f7 !important;
  background-color:#f4f4f7 !important;
  color:#15151c !important;
  -webkit-text-fill-color:#15151c !important;
  border:1.5px solid #c8c8d0 !important;
  border-radius:8px !important;
  padding:12px 14px !important;
  font-size:15px !important;
}
html body input#frm-lbl::placeholder,
html body input#to-lbl::placeholder{
  color:#9a9aa5 !important;
  -webkit-text-fill-color:#9a9aa5 !important;
}

/* =================================================================
   v2.57.1 — Lupe-Icon schwarz (HARDCORE Specificity), Direction-Sidebar
   bessere Fonts, Sperre-Button auffälliger, X-Close-Reset (siehe JS)
   ================================================================= */

/* LUPE-ICON: html+body+id+klasse+i = SEHR hohe Specificity */
html body #asl-storelocator.asl-cont .asl-store-search .asl-search-event,
html body #asl-storelocator.asl-cont .asl-store-search .input-group-text,
html body #asl-storelocator.asl-cont .asl-store-search .asl-search-event i,
html body #asl-storelocator.asl-cont .asl-store-search .asl-search-event .icon-search,
html body #asl-storelocator.asl-cont .asl-store-search .input-group-text i,
html body #asl-storelocator.asl-cont .asl-store-search .input-group-text .icon-search{
  color:#0a0a0a !important;
  -webkit-text-fill-color:#0a0a0a !important;
}

/* DIRECTION-SIDEBAR — groesere Fonts, kein Verschieben */
html body .directions-cont:not(.hide){
  padding:20px !important;
}
html body .directions-cont:not(.hide) h2,
html body .directions-cont:not(.hide) h3,
html body .directions-cont:not(.hide) h4,
html body .directions-cont:not(.hide) [class*="heading"]{
  font-size:20px !important;
  margin:0 0 14px !important;
}
html body .rendered-directions{
  font-size:14px !important;
}
html body .rendered-directions td{
  font-size:14px !important;
  padding:12px 10px !important;
  line-height:1.4 !important;
}
html body .rendered-directions td:nth-child(1){
  width:36px !important;
  text-align:center !important;
}
html body .rendered-directions td:nth-child(2){
  font-weight:700 !important;
  color:#ffffff !important;
}
html body .rendered-directions td:last-child{
  text-align:right !important;
  font-family:'Bebas Neue','Anton',Impact,sans-serif !important;
  letter-spacing:.08em !important;
  white-space:nowrap !important;
}

/* SPERRE-BUTTON deutlich auffälliger — pulsing border + bigger */
html body .basl-lock-relock{
  padding:14px 26px !important;
  font-size:14px !important;
  letter-spacing:.2em !important;
  border:2px solid #ffffff !important;
  background:rgba(15,15,18,.92) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  backdrop-filter:blur(10px) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.5), 0 0 0 3px rgba(255,255,255,.08) !important;
  animation:basl-lock-pulse 2.5s ease-in-out infinite !important;
}
@keyframes basl-lock-pulse{
  0%, 100% { box-shadow:0 8px 24px rgba(0,0,0,.5), 0 0 0 3px rgba(255,255,255,.08); }
  50% { box-shadow:0 10px 30px rgba(0,0,0,.6), 0 0 0 8px rgba(255,255,255,.04); }
}
html body .basl-lock-relock:hover{
  animation:none !important;
}

/* =================================================================
   v2.60.1 — Border weg + Mobile Fix
   ================================================================= */

/* Border vom .asl-wrapper komplett entfernen (User-Wunsch: keine
   weisse Linie um das Widget) */
html body #asl-storelocator .asl-wrapper,
html body .asl-wrapper{
  border:0 !important;
  border-radius:0 !important;
  overflow:visible !important;
}

/* MOBILE — Panel + Map stapeln, beide voll sichtbar */
@media (max-width: 768px){
  html body #asl-storelocator .asl-wrapper,
  html body #asl-storelocator .asl_locator-panel,
  html body #asl-storelocator{
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  html body #asl-storelocator .asl-panel{
    height:auto !important;
    min-height:auto !important;
    max-height:none !important;
    width:100% !important;
    float:none !important;
    margin-bottom:14px !important;
  }
  html body #asl-storelocator .asl-map,
  html body #asl-storelocator .asl-map-canv,
  html body #asl-storelocator #asl-map-canv{
    height:420px !important;
    min-height:420px !important;
    width:100% !important;
    float:none !important;
    display:block !important;
  }
  /* Suchleiste oben kompakter auf mobile */
  html body #asl-storelocator.asl-cont .asl-store-search input{
    padding:12px 46px 12px 16px !important;
    font-size:13px !important;
  }
  html body #asl-storelocator.asl-cont .asl-search-event,
  html body #asl-storelocator.asl-cont .input-group-text{
    width:32px !important;
    height:32px !important;
  }
  /* Sidebar-Liste max-height aufheben damit alle Items sichtbar */
  html body #asl-storelocator .sl-main-cont-box{
    max-height:none !important;
    overflow-y:visible !important;
  }
  html body #asl-storelocator .asl-overflow,
  html body #asl-storelocator [class*="overflow"]{
    max-height:none !important;
    overflow-y:visible !important;
  }
  /* InfoBox Popup-Position-Fix fuer Mobile */
  html body .asl-cont .infoBox.infoBox{
    max-width:88vw !important;
  }
}

/* =================================================================
   v2.60.2 — Border zurueck mit mehr Radius + Popup-Font Mega-Hammer
   ================================================================= */

/* Border darf bleiben, aber mehr radius (28px) */
html body #asl-storelocator .asl-wrapper{
  border:1px solid rgba(255,255,255,.15) !important;
  border-radius:28px !important;
  overflow:hidden !important;
}
@media (max-width: 768px){
  html body #asl-storelocator .asl-wrapper{
    border-radius:20px !important;
    overflow:visible !important;
  }
}

/* POPUP-FONT MEGA-HAMMER: maximale Specificity ueber Container + ID */
html body #asl-storelocator div.infoBox.infoBox h3,
html body .asl-cont div.infoBox.infoBox h3,
html body div.infoBox.infoBox h3,
html body div.infoBox h3.infoBox-title,
.gm-style div.infoBox h3{
  /* font-family wird im Loop oben gesetzt - hier ist nur extra Spec */
}

/* =================================================================
   v2.60.3 — Border ganz weg + Sidebar-Liste voll sichtbar (kein max-height)
   ================================================================= */

html body #asl-storelocator .asl-wrapper{
  border:0 !important;
  border-radius:28px !important;
  overflow:hidden !important;
}

/* Sidebar-Liste: max-height + overflow rauspatchen damit letzte Items voll sichtbar */
html body #asl-storelocator .sl-main-cont-box,
html body #asl-storelocator .asl-overflow{
  max-height:none !important;
  overflow-y:visible !important;
  height:auto !important;
}
/* Wrapper darf darüber hinaus wachsen */
html body #asl-storelocator .asl-panel-inner{
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}

/* =================================================================
   v2.60.4 — Scroll wieder ermoeglichen, Border-Linien-Suche
   ================================================================= */

/* Sidebar-Liste: scrollbar mit hoeherer max-height (statt none) */
html body #asl-storelocator .sl-main-cont-box,
html body #asl-storelocator .asl-overflow{
  max-height:560px !important;
  overflow-y:auto !important;
  height:auto !important;
  min-height:auto !important;
}
html body #asl-storelocator .asl-panel-inner{
  height:auto !important;
  min-height:auto !important;
  max-height:none !important;
  overflow:visible !important;
}

/* Outline-Spur entfernen (Live-DOM zeigt outline:1.6px - sieht weiss aus auf Dark BG) */
html body #asl-storelocator,
html body #asl-storelocator .asl-wrapper,
html body #asl-storelocator *{
  outline:none !important;
}

/* Border-Radius behalten aber Border NULL */
html body #asl-storelocator .asl-wrapper{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* =================================================================
   v2.60.5 — Echte Border-Quelle: .asl-panel hat 0.53px solid #eee
   ================================================================= */

/* .asl-panel ist das border-tragende Element, nicht .asl-wrapper */
html body #asl-storelocator .asl-panel,
html body .asl-panel{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
/* Plus alle nested wrapper auch ohne border + outline */
html body #asl-storelocator .asl-panel-inner,
html body #asl-storelocator .asl_locator-panel,
html body #asl-storelocator .asl-wrapper{
  border:0 !important;
  outline:0 !important;
}

/* asl-panel-inner darf rausragen damit alle Cards sichtbar sind */
html body #asl-storelocator .asl-panel-inner{
  overflow:visible !important;
  height:auto !important;
  max-height:none !important;
}

/* =================================================================
   v2.60.9 — Viewport-Caps von v2.60.8 RAUS (zu aggressiv, hat das
   Widget immer abgeschnitten). Zurueck zur Original-ASL-Hoehe.
   sl-main-cont-box bekommt nur einen weichen max-height-Wert
   (560px) wie in v2.60.5 — damit passt die Standardansicht und
   nichts wird auf grossen Viewports unnoetig zerquetscht.
   ================================================================= */
html body #asl-storelocator .sl-main-cont-box{
  min-height:480px !important;
  max-height:560px !important;
  height:560px !important;
  overflow-y:auto !important;
  display:block !important;
}

/* =================================================================
   v2.60.10 — Abstand nach UNTEN damit das Widget nicht ans
   naechste Element / den Footer klebt und unten geclippt wirkt.
   Plus: scroll-margin oben, falls jemand zur Section springt.
   ================================================================= */
html body #asl-storelocator{
  margin-bottom:120px !important;
  padding-bottom:24px !important;
  scroll-margin-top:80px !important;
  scroll-margin-bottom:80px !important;
}
/* Falls Elementor das Widget in einen Container packt, auch dem
   Abstand geben (greift nur wenn die Klasse vorhanden ist). */
html body .elementor-widget-shortcode:has(> .elementor-widget-container > [id^="asl-"]){
  margin-bottom:80px !important;
}
@media (max-width:768px){
  html body #asl-storelocator{
    margin-bottom:60px !important;
    padding-bottom:16px !important;
  }
}

/* =================================================================
   v2.60.6 — Eigene weisse Design-Border zurueck + Page-Scroll
   ------------------------------------------------------------
   - .asl-panel bleibt borderless (war die haessliche 0.53px #eee)
   - .asl-wrapper bekommt unsere eigene, dezente, weiche Border
   - Lenis-Prevent wird in blacky-asl-lock.js NUR auf inneren
     Containern gesetzt (Map/Liste/Popup), nicht auf dem Widget-
     Root → User kann durch das Widget hindurch weiter runter
     scollen.
   ================================================================= */

html body #asl-storelocator .asl-wrapper,
html body .asl-wrapper{
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:24px !important;
  overflow:hidden !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 18px 60px rgba(0,0,0,.45) !important;
}

/* Mobile: Wrapper nicht hart hoehenbeschraenken, sonst clippt
   die letzte Card. Plus etwas kleinerer Radius am Handy. */
@media (max-width:768px){
  html body #asl-storelocator .asl-wrapper,
  html body .asl-wrapper{
    border-radius:18px !important;
    height:auto !important;
    min-height:0 !important;
  }
  html body #asl-storelocator .sl-main-cont-box{
    height:auto !important;
    max-height:70vh !important;
  }
}
