#footer {display:none}

#map {
  height: calc(100vh);
  width:100%;
}

#map-container {
  background-color:white;
  overflow:hidden;
  box-sizing: border-box; 
  display: flex;
  flex-direction: row;
  width:100%;
  height: calc(100vh);
}


#map-search-container {
    position: relative;
    display:none;
    align-items: center;
    gap:10px;
    width: 100%;
    width:calc(100vw - 30px);
    max-width: 390px; /* same as Maps default width */
    margin: 10px;
    z-index: 5; /* make sure it’s above the map */
}
 #map-search-container[data-available="true"] {display:flex}

#map-search-container-box {
    background: #fff;
    border-radius: 24px;
    box-shadow:
        0 1px 2px rgba(0,0,0,0.1),
        0 1px 3px rgba(0,0,0,0.2);
    display: flex;
    align-items: center;
    flex:1;
    padding: 0 12px 0 40px;
    height: 48px;
    position: relative;
}
#map-search-container-box:hover {
    box-shadow:
        0 2px 4px rgba(0,0,0,0.12),
        0 2px 6px rgba(0,0,0,0.2);
}

#map-search-container-box input {
    border: none;
    outline: none;
    background: transparent;
    font-size: 16px;
    width: 100%;
    color: #202124; /* Google text color */
}

#map-search-container-box-icon {
    position: absolute;
    left: 14px;
    width: 20px;
    height: 20px;
    opacity: 0.6;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;

    /* Google's magnifier icon from Maps */
    background-image: url('data:image/svg+xml;utf8,\
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M23.832 19.641l-6.821-6.821c2.834-5.878-1.45-12.82-8.065-12.82-4.932 0-8.946 4.014-8.946 8.947 0 6.508 6.739 10.798 12.601 8.166l6.879 6.879c1.957.164 4.52-2.326 4.352-4.351zm-14.886-4.721c-3.293 0-5.973-2.68-5.973-5.973s2.68-5.973 5.973-5.973c3.294 0 5.974 2.68 5.974 5.973s-2.68 5.973-5.974 5.973z"/></svg>');
}

    #map {
      flex: 1;
      align-items: stretch;
    }
    #map * {line-height: 1rem !important}

#map-dialog {
  padding: 20px;
  border: none;
  border-radius: 8px;
  max-width:500px;
  max-height: min(calc(100vh - 100px), 440px);
}
#map-dialog::backdrop {
  background: rgba(0, 0, 0, 0.5);
}

#map-dialog[data-isactive="true"] {display:block;}



/* Desktop detail sidebar */
#map-panel-left {
    position: absolute;
    top: 0;
    left: 0;
    width:100%;
    max-width:420px;
    height: 100%;
    box-sizing: border-box;

    overflow-y: auto;
      transform: translateX(-100%);
      transition: transform 0.3s ease;
    z-index: 20;
    background: #ffffff;
    overflow: visible;       
}
#map-panel-left.is-open {
    transform: translateX(0);  

    box-shadow: 6px 0 3px -2px #DDD;    

    display: block;
}

#map-panel-left[data-search-available="true"] {
            padding-top:70px;
}


#map-panel-left-content {
  position: absolute;
  left:0px;
  right:0px;
  padding: 12px;    
  z-index: 21;     
  overflow:auto;

}
#map-panel-left-collapse {
  display:none;
  position: absolute;

  align-items: center;
  justify-content: center;
  border-radius: 0px 8px 8px 0px ;
  top:50%;
  background-color: white;;
  right: -20px;
  width: 20px;
  transform: translateY(-60px);    
  height: 60px;
  border:1px solid silver;
  border-left:0px;
  box-shadow: 4px 0 2px -2px #DDD;
  z-index: 22;      
}


#map-panel-left.is-open #map-panel-left-collapse {  display:flex;}


/* Mobile bottom sheet */
#map-panel-bottom {
    position: fixed;
    left: 0;
    right: 0;
    max-width:96%;
    margin:0 auto;
    bottom: 0;
    background: #ffffff;
    box-shadow: 0 -2px 8px rgba(0,0,0,0.15);
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
    transition: transform 0.25s ease-out;
    z-index: 30;
    transition: transform 0.3s ease;
}

#map-panel-bottom.is-open {
    transform: translateY(0);
}

#map-panel-bottom-collapse {
    width: 32px;
    margin: 0px auto;
    cursor: pointer;;

}



#map-panel-bottom-content {
    height: auto;
    overflow-y: none;
    padding: 8px 12px 12px;
}



/* Desktop vs mobile visibility */
@media (min-width: 768px) {
    #map-panel-bottom {
        display: none;
    }
}

@media (max-width: 767px) {
    #map-panel-left {
        display: none !important;
    }
}

#map-search-suggestions {
  position: absolute;
  background: white;
  border-radius: 0px 0px 24px 24px  ;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 4px 6px rgba(0,0,0,0.15);
  clip-path: inset(0 0 -20px 0); /* block top, allow bottom shadow */    
  list-style: none;
  margin: 0;
  left:0px;
  right:0px;
  padding: 0;
  top:30px;
  z-index: 9999;
}
#map-search-suggestions li {
  padding: 8px;
  cursor: pointer;
}
#map-search-suggestions li:hover {font-weight: bold;;}

/* MAP CONTROL BUTTONS */
#map-controls {
  position: absolute;
  box-sizing: border-box;         
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5rem;
  width:100%;
  max-width:400px;
  padding:5px 5px;
  z-index:999;
}

#map-buttons-container {
    display:flex;
    flex-direction: column;
    gap:4px;
    margin-right:10px;
}
#map-buttons-container button {
    background-color: #fff;
    border: 0;
    border-radius: 2px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.3);
    cursor: pointer;
    width: 48px;
    height: 48px; /* Add explicit height */
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: flex-start;
    padding:0px;
}

#map-buttons-container span {
    display:flex;
    align-items: center;
    flex:1;
    justify-content: center;

}


#map-buttons-container [data-isactive="true"] * {color:white;fill:white;color:white;box-shadow: 0 0 4px green, 0 0 8px green;}
/*
border-color:#FC7B15;background-color:#FC7B15;
*/



#map-btn-best span {
    background-image: url('data:image/svg+xml;utf8,<svg width="32" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M15 21M10 21V14.6627C10 14.4182 10 14.2959 9.97237 14.1808C9.94787 14.0787 9.90747 13.9812 9.85264 13.8917C9.7908 13.7908 9.70432 13.7043 9.53137 13.5314L3.46863 7.46863C3.29568 7.29568 3.2092 7.2092 3.14736 7.10828C3.09253 7.01881 3.05213 6.92127 3.02763 6.81923C3 6.70414 3 6.58185 3 6.33726V4.6C3 4.03995 3 3.75992 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.75992 3 4.03995 3 4.6 3H19.4C19.9601 3 20.2401 3 20.454 3.10899C20.6422 3.20487 20.7951 3.35785 20.891 3.54601C21 3.75992 21 4.03995 21 4.6V6.33726C21 6.58185 21 6.70414 20.9724 6.81923C20.9479 6.92127 20.9075 7.01881 20.8526 7.10828C20.7908 7.2092 20.7043 7.29568 20.5314 7.46863L17 11" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g><circle transform="translate(18,8)" cx="1" cy="8" r="8" fill="white"/><path transform="translate(13,10) scale(0.55)" fill="black" d="M12 .587l3.668 7.568 8.332 1.151-6.064 5.828 1.48 8.279-7.416-3.967-7.417 3.967 1.481-8.279-6.064-5.828 8.332-1.151z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}


#map-btn-best[data-isactive="true"] span {
    background-image: url('data:image/svg+xml;utf8,<svg width="32" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M15 21M10 21V14.6627C10 14.4182 10 14.2959 9.97237 14.1808C9.94787 14.0787 9.90747 13.9812 9.85264 13.8917C9.7908 13.7908 9.70432 13.7043 9.53137 13.5314L3.46863 7.46863C3.29568 7.29568 3.2092 7.2092 3.14736 7.10828C3.09253 7.01881 3.05213 6.92127 3.02763 6.81923C3 6.70414 3 6.58185 3 6.33726V4.6C3 4.03995 3 3.75992 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.75992 3 4.03995 3 4.6 3H19.4C19.9601 3 20.2401 3 20.454 3.10899C20.6422 3.20487 20.7951 3.35785 20.891 3.54601C21 3.75992 21 4.03995 21 4.6V6.33726C21 6.58185 21 6.70414 20.9724 6.81923C20.9479 6.92127 20.9075 7.01881 20.8526 7.10828C20.7908 7.2092 20.7043 7.29568 20.5314 7.46863L17 11" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g><circle transform="translate(18,8)" cx="1" cy="8" r="8" fill="white"/><path transform="translate(13,11) scale(0.48)" fill="black" d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm7 14h-14v-4h14v4z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}  


#map-btn-maximize span {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M24 9h-2v-4h-4v-2h6v6zm-6 12v-2h4v-4h2v6h-6zm-18-6h2v4h4v2h-6v-6zm6-12v2h-4v4h-2v-6h6z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}
#map-btn-maximize[data-isactive="true"] span {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M18 3h2v4h4v2h-6v-6zm6 12v2h-4v4h-2v-6h6zm-18 6h-2v-4h-4v-2h6v6zm-6-12v-2h4v-4h2v6h-6z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
  }

#map-btn-withreviews span {
    background-image: url('data:image/svg+xml;utf8,<svg width="32" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M15 21M10 21V14.6627C10 14.4182 10 14.2959 9.97237 14.1808C9.94787 14.0787 9.90747 13.9812 9.85264 13.8917C9.7908 13.7908 9.70432 13.7043 9.53137 13.5314L3.46863 7.46863C3.29568 7.29568 3.2092 7.2092 3.14736 7.10828C3.09253 7.01881 3.05213 6.92127 3.02763 6.81923C3 6.70414 3 6.58185 3 6.33726V4.6C3 4.03995 3 3.75992 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.75992 3 4.03995 3 4.6 3H19.4C19.9601 3 20.2401 3 20.454 3.10899C20.6422 3.20487 20.7951 3.35785 20.891 3.54601C21 3.75992 21 4.03995 21 4.6V6.33726C21 6.58185 21 6.70414 20.9724 6.81923C20.9479 6.92127 20.9075 7.01881 20.8526 7.10828C20.7908 7.2092 20.7043 7.29568 20.5314 7.46863L17 11" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g><circle transform="translate(18,8)" cx="1" cy="8" r="8" fill="white"/><path transform="translate(14,10) scale(0.48)" fill="black" d="M12 1c-6.338 0-12 4.226-12 10.007 0 2.05.739 4.063 2.047 5.625.055 1.83-1.023 4.456-1.993 6.368 2.602-.47 6.301-1.508 7.978-2.536 9.236 2.247 15.968-3.405 15.968-9.457 0-5.812-5.701-10.007-12-10.007zm-5 11.5c-.829 0-1.5-.671-1.5-1.5s.671-1.5 1.5-1.5 1.5.671 1.5 1.5-.671 1.5-1.5 1.5zm5 0c-.829 0-1.5-.671-1.5-1.5s.671-1.5 1.5-1.5 1.5.671 1.5 1.5-.671 1.5-1.5 1.5zm5 0c-.828 0-1.5-.671-1.5-1.5s.672-1.5 1.5-1.5c.829 0 1.5.671 1.5 1.5s-.671 1.5-1.5 1.5z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}  

#map-btn-withreviews[data-isactive="true"] span {
    background-image: url('data:image/svg+xml;utf8,<svg width="32" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M15 21M10 21V14.6627C10 14.4182 10 14.2959 9.97237 14.1808C9.94787 14.0787 9.90747 13.9812 9.85264 13.8917C9.7908 13.7908 9.70432 13.7043 9.53137 13.5314L3.46863 7.46863C3.29568 7.29568 3.2092 7.2092 3.14736 7.10828C3.09253 7.01881 3.05213 6.92127 3.02763 6.81923C3 6.70414 3 6.58185 3 6.33726V4.6C3 4.03995 3 3.75992 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.75992 3 4.03995 3 4.6 3H19.4C19.9601 3 20.2401 3 20.454 3.10899C20.6422 3.20487 20.7951 3.35785 20.891 3.54601C21 3.75992 21 4.03995 21 4.6V6.33726C21 6.58185 21 6.70414 20.9724 6.81923C20.9479 6.92127 20.9075 7.01881 20.8526 7.10828C20.7908 7.2092 20.7043 7.29568 20.5314 7.46863L17 11" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g><circle transform="translate(18,8)" cx="1" cy="8" r="8" fill="white"/><path transform="translate(13,11) scale(0.48)" fill="black" d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm7 14h-14v-4h14v4z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}  



#map-btn-reload span {
    background-image: url('data:image/svg+xml;utf8,<svg width="32" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M15 21M10 21V14.6627C10 14.4182 10 14.2959 9.97237 14.1808C9.94787 14.0787 9.90747 13.9812 9.85264 13.8917C9.7908 13.7908 9.70432 13.7043 9.53137 13.5314L3.46863 7.46863C3.29568 7.29568 3.2092 7.2092 3.14736 7.10828C3.09253 7.01881 3.05213 6.92127 3.02763 6.81923C3 6.70414 3 6.58185 3 6.33726V4.6C3 4.03995 3 3.75992 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.75992 3 4.03995 3 4.6 3H19.4C19.9601 3 20.2401 3 20.454 3.10899C20.6422 3.20487 20.7951 3.35785 20.891 3.54601C21 3.75992 21 4.03995 21 4.6V6.33726C21 6.58185 21 6.70414 20.9724 6.81923C20.9479 6.92127 20.9075 7.01881 20.8526 7.10828C20.7908 7.2092 20.7043 7.29568 20.5314 7.46863L17 11" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g><circle transform="translate(18,8)" cx="1" cy="8" r="8" fill="white"/><path transform="translate(13,11) scale(0.48)" fill="black" d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm7 14h-14v-4h14v4z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}

#map-btn-reload[data-isactive="true"] span {
    background-image: url('data:image/svg+xml;utf8,<svg width="32" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M15 21M10 21V14.6627C10 14.4182 10 14.2959 9.97237 14.1808C9.94787 14.0787 9.90747 13.9812 9.85264 13.8917C9.7908 13.7908 9.70432 13.7043 9.53137 13.5314L3.46863 7.46863C3.29568 7.29568 3.2092 7.2092 3.14736 7.10828C3.09253 7.01881 3.05213 6.92127 3.02763 6.81923C3 6.70414 3 6.58185 3 6.33726V4.6C3 4.03995 3 3.75992 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.75992 3 4.03995 3 4.6 3H19.4C19.9601 3 20.2401 3 20.454 3.10899C20.6422 3.20487 20.7951 3.35785 20.891 3.54601C21 3.75992 21 4.03995 21 4.6V6.33726C21 6.58185 21 6.70414 20.9724 6.81923C20.9479 6.92127 20.9075 7.01881 20.8526 7.10828C20.7908 7.2092 20.7043 7.29568 20.5314 7.46863L17 11" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g><circle transform="translate(18,8)" cx="1" cy="8" r="8" fill="white"/><path transform="translate(13,10) scale(0.55)" fill="black" d="M12 .587l3.668 7.568 8.332 1.151-6.064 5.828 1.48 8.279-7.416-3.967-7.417 3.967 1.481-8.279-6.064-5.828 8.332-1.151z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}

#map-btn-location span {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="22" height="22"><path d="M0 0h24v24H0z" fill="none"/><path fill="black" d="M12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm8.94 3c-.46-4.17-3.77-7.48-7.94-7.94V1h-2v2.06C6.83 3.52 3.52 6.83 3.06 11H1v2h2.06c.46 4.17 3.77 7.48 7.94 7.94V23h2v-2.06c4.17-.46 7.48-3.77 7.94-7.94H23v-2h-2.06zM12 19c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}


#map-btn-info span {
    background-image: url('data:image/svg+xml;utf8,<svg  fill="black" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm-.001 5.75c.69 0 1.251.56 1.251 1.25s-.561 1.25-1.251 1.25-1.249-.56-1.249-1.25.559-1.25 1.249-1.25zm2.001 12.25h-4v-1c.484-.179 1-.201 1-.735v-4.467c0-.534-.516-.618-1-.797v-1h3v6.265c0 .535.517.558 1 .735v.999z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}

/* POPUP MESSAGE */
#map-popup-message {
  min-width: 220px;
  max-width: 260px;
  position: fixed;
  top: 50%;
  left: 50%;
  padding: 12px 18px;
  transform: translate(-50%, -50%);  /* Combined into one line */
  background: white;
  color: black;
  font-weight: normal;
  font-size: 14px;
  border-radius: 1px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
  z-index: 9999;
  opacity: 0;
  transition: opacity 0.6s ease;
}


/* MARKERS */
.normalMarker {
    box-sizing: border-box;
    position: relative;
    width:28px;
    height:28px;
    border-radius: 14px;
    border:3px solid white;
    background-color: #FC7B15;
}


.normalMarker[data-visited] {
    border:3px solid #0d5c99;
    background-color: white;
}

.normalMarker[data-active] {
    border:3px solid #FC7B15;
    background-color: white;
        animation: breathing 1.5s ease-out infinite normal;
}


.clusteredMarker {
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color:white;

    font-weight: bold;
    font-size:10px;
    width:36px;
    height:28px;
    border-radius: 14px;
    border:3px solid white;
    background-color: #FC7B15;
    cursor:pointer;
}

.clusteredMarker[data-visited] {
    border:3px solid #0d5c99;
    background-color: white;
    color:#0d5c99;
}

.clusteredMarker[data-active] {
    border:3px solid #FC7B15;
    color:#FC7B15;
    background-color: white;
        animation: breathing 1.5s ease-out infinite normal;
}



@-webkit-keyframes breathing {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }


  50% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes breathing {
  0% {
    top: 0px;    
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  40% {
    top: -20px;    
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    top: 0px;    
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

/* ARTICLES */
.store-wrapper {
    width: 100%;
    margin: 0px;
    background: #fff;
    border-radius: 0px;
    padding: 0px 8px;

}

.store-nav {
    background-color: #efefef;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 8px 0px;
}

.store-nav button {
    border: 1px solid #ddd;
    background: gray;
    border-radius: 4px;
    padding: 0.5rem 0.9rem;
    cursor: pointer;
    font-size: 1rem;
    color: white;
    font-weight: bold;
}

.store-nav button:disabled {
    background: #DCDCDC;
  cursor: default;
}

.stores-container .store-item {
  display: none;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  min-height: 100px;
}

.stores-container .store-item.active {
  display: block;
  opacity: 1;
  transform: translateY(0);
}


.stores-container .store-content {
    margin-top:12px;
  border-bottom:35px solid #efefef;        
}


.stores-container [data-store-item="header"] {
display:flex;gap:8px;align-items:stretch;padding-bottom:8px;
}

.stores-container .store-hide {display:none !important}

#map-panel-bottom .stores-container [data-store-item="text"] {
display:none; 
}

 

/* HTML: <div class="loader"></div> */
.stores-container [data-store-item="loader"] {display:flex;align-items: center;justify-content: center;height:5.25rem;}
.stores-container [data-store-item="loader"] span  {
  width: 60px;
  aspect-ratio: 4;
  background: radial-gradient(circle closest-side,#efefef 90%,#0000) 0/calc(100%/3) 100% space;
  clip-path: inset(0 100% 0 0);
  animation: l1 1s steps(4) infinite;
  animation-delay: 1s;  
}
@keyframes l1 {to{clip-path: inset(0 -34% 0 0)}}