/****************************** ****************************** 
                  Map Info Window CSS
****************************** *****************************/
.map .gm-style-iw {
  padding: .75rem;
  max-width: 425px !important;
  width: 100%;
  border-radius: 0;
}
@media (max-width: 479.98px) {
  .map .gm-style-iw {
    max-width: 250px !important;
  }
}
.map .gm-style-iw-d > div {
  display: flex;
  align-items: center;
  background: var(--bs-neutral-50);
}
#wpsl-gmap.map .wpsl-info-window.location-details {
  max-width: 100% !important;
  display: flex;
  align-items: center;
  width: 100%;
}
.map .map_info_img {
  padding-right: 1.25rem;
}
.map .map_info_img > img {
  width: 140px;
  height: 140px;
  object-fit: cover;
}
@media (max-width: 479.98px) {
  .map .map_info_img > img {
    width: 100px;
    height: 100px;
  }
}
.map .map_info_detail {
  padding: 1rem;
  flex: auto;
}
.map .map_info_detail header {
  font-size: 1.125rem;
  color: var(--bs-primary-800);
  font-weight: 600;
}
.map .map_info_detail ul.details {
  list-style: none;
  margin: 0;
}
.map .map_info_detail ul.details li {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--bs-neutral-500);
}
.map .map_info_detail a.btn.btn-link, .map .map_info_detail .wpsl-directions {
  padding: 0 !important;
  color: var(--bs-primary-800);
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: none;
}
.map .map_info_detail .wpsl-directions::after {
  background-image: url("data:image/svg+xml,<svg width='16' height='17' viewBox='0 0 16 17' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M6 12.6641L10 8.66406L6 4.66406' stroke='%23424143' stroke-width='1.125' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  position: absolute !important;
  content: "" !important;
  width: 16px !important;
  height: 17px !important;
  background-size: cover;
  transition: transform .25s ease-out;
}
.map .map_info_detail .wpsl-directions:hover::after {
  transform: translate(5px);
}
.map .map_info_detail a.btn.btn-link .icon {
  position: relative;
  top: 2px;
}
.map .gm-style .gm-style-iw-a .gm-style-iw-t .gm-style-iw-c .gm-style-iw-d {
  height: auto;
}
/****************************** ****************************** 
                     Map Block
****************************** *****************************/
.zdcb-map-block .map {
  height: 380px;
}
@media (min-width:768px) {
  .zdcb-map-block .map {
    height: 600px
  }
}
.zdcb-map-block.location-details--card .location-details header a {
	text-decoration: none !important;
	color: var(--bs-primary-900);
	font-weight: 500;
	cursor: inherit;
}
.zdcb-map-block.location-details--card .location-details header {
  margin-top: 0;
  margin-bottom: 1.5rem;
}
.zdcb-map-block.location-details--card .location-details .loc_close {
  display: block;
  position: relative;
  top: -35px;
  right: -35px;
  cursor: pointer;
  z-index: 1;
}
@media (max-width: 1023.98px) {
  .zdcb-map-block.location-details--card .location-details .loc_close {
    top: -40px;
    right: -15px;
  }
}
.zdcb-map-block.location-details--card .location-details header .menu-arrow svg.icon {
  width: 1.5rem;
  height: 1.5rem;
}
.zdcb-map-block.location-details--card .location-details ul.details {
  font: normal 400 1rem/1.1 var(--primary-theme-font);
}
.zdcb-map-block.location-details--card .location-details ul.details li .icon {
  width: 1.5rem;
  height: 1.5rem;
  margin-right: 1.4375em;
  flex-shrink: 0;
}
.zdcb-map-block.location-details--card .location-details ul.details li {
  margin-bottom: 0.5rem;
}
.zdcb-map-block.location-details--card .location-details ul.details li a, .zdcb-map-block.location-details--card .location-details ul.details li a:link, .zdcb-map-block.location-details--card .location-details ul.details li a:visited {
	color: var(--bs-neutral-500);
	font-size: 1rem;
	font-weight: 400;
	text-decoration: none;
}
.zdcb-map-block.location-details--card .location-details ul.details li a:hover {
    color: var(--bs-primary-500);
    text-decoration: none;
}
.zdcb-map-block.location-details--card .location-details ul.details li.opening_hours {
  margin: 0;
  display: block;
  font-size: 1rem;
  color: var(--bs-neutral-500);
  font-weight: 400;
  padding: 0.375rem 15px 0rem 0;
}
.zdcb-map-block.location-details--card .location-details ul.details li.opening_hours h5 {
  margin: 0;
  display: block;
  margin-top: 0.875rem;
  font-weight: 500;
  color: var(--bs-primary-900);
  font-family: var(--heading-theme-font);
}
.zdcb-map-block.location-details--card .location-details ul.details li.opening_hours strong {
  font-weight: 600;
  color: var(--bs-primary-900);
  font-size: 1rem;
  width: 160px;
  display: inline-flex;
}
.zdcb-map-block.location-details--card .location-details ul.details li.opening_hours p {
	color: var(--bs-neutral-500);
	font-size: 1rem;
	font-weight: 400;
	margin: 0.5rem 0;
	line-height: 1.7;
}
.zdcb-map-block.location-details--card .location-details {
  width: 100%;
  padding: 2.25rem 15px;
}
@media (min-width: 1024px) {
  .zdcb-map-block.location-details--card .location-details {
    box-shadow: 0px 10px 20px 0px rgba(16, 24, 40, 0.10);
    padding: 2.25rem;
  }
}
.zdcb-map-block .dropdown-menu {
  list-style: none;
  margin: 0;
  padding: 1rem 1.5rem;
  position: absolute;
  top: 50px !important;
  left: 24px;
  width: 100%;
  max-width: 300px;
  min-width: 200px;
  background: var(--bs-shades-0);
  box-shadow: 0px 10px 20px 0px rgba(16, 24, 40, 0.20);
  border: 1px solid var(--lightGray);
  border-radius: 15px;
  z-index: 10;
  display: block;
  float: none;
  opacity: 1;
  visibility: visible;
  overflow-x: hidden;
  overflow-y: auto;
  max-height: 250px;
}
@media (min-width: 1024px) {
  .zdcb-map-block .dropdown-menu {
    top: 80px !important;
  }
  .zdcb-map-block.location-details--card .location-details {
    width: 40%;
  }
}
@media (min-width: 1200px) {
  .zdcb-map-block.location-details--card .location-details {
    width: 35%;
  }
}
.zdcb-map-block.location-details--card .map .gm-style .gm-style-iw-tc::after {
  left: -71px !important;
}
.zdcb-map-block .dropdown-menu::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  top: -5px;
  left: calc(50% - 10px);
  transform: rotate(45deg);
  background: var(--bs-shades-0);
  border: none;
  border-radius: 25px;
}
.zdcb-map-block .dropdown-menu li {
  padding: 7px 0;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--bs-primary-900);
}
.zdcb-map-block .dropdown-menu li a {
  color: var(--bs-primary-900);
  font-weight: 500;
}
.zdcb-map-block .dropdown-menu li a:hover {
  text-decoration: none;
  color: var(--bs-primary);
}
.zdcb-map-block.location-details--card .map {
  margin-top: 0;
}
.zdcb-map-block.location-details--card .map .gm-style-iw, .zdcb-map-block.location-details--infowindow .map .gm-style-iw {
  padding: .75rem;
  max-width: 305px !important;
}
@media (min-width: 375px) {
  .zdcb-map-block.location-details--card .map .gm-style-iw, .zdcb-map-block.location-details--infowindow .map .gm-style-iw {
    max-width: 340px !important;
  }
}
@media (min-width: 480px) {
  .zdcb-map-block.location-details--card .map .gm-style-iw, .zdcb-map-block.location-details--infowindow .map .gm-style-iw {
    max-width: 425px !important;
  }
}
.zdcb-map-block.location-details--card .map .gm-style-iw-d > div, .zdcb-map-block.location-details--infowindow .map .gm-style-iw-d > div {
  display: flex;
  align-items: center;
  background: var(--bs-shades-0);
}
.zdcb-map-block.location-details--card .map .map_info_img, .zdcb-map-block.location-details--infowindow .map .map_info_img {
  padding-right: 0;
}
.zdcb-map-block.location-details--card .map .map_info_detail header, .zdcb-map-block.location-details--infowindow .map .map_info_detail header {
  font-size: 1.15rem;
  color: var(--bs-primary-900);
  font-weight: 500;
}
.zdcb-map-block.location-details--card .map .map_info_detail ul.details, .zdcb-map-block.location-details--infowindow .map .map_info_detail ul.details {
  list-style: none;
  margin: 0;
}
.zdcb-map-block.location-details--card .map .map_info_detail ul.details li, .zdcb-map-block.location-details--infowindow .map .map_info_detail ul.details li {
  font-size: 0.875rem;
  font-weight: 300;
  color: var(--bs-neutral-500);
}
.zdcb-map-block.location-details--card .map .map_info_detail a.btn.btn-link, .zdcb-map-block.location-details--infowindow .map .map_info_detail a.btn.btn-link {
  padding: 0 !important;
  color: var(--bs-primary-500);
  font-size: 0.875rem;
  font-weight: 500;
}
.zdcb-map-block.location-details--card .map .map_info_detail a.btn.btn-link .icon, .zdcb-map-block.location-details--infowindow .map .map_info_detail a.btn.btn-link .icon {
  position: relative;
  top: 1px;
}
.zdcb-map-block.location-details--card .map .map_info_detail {
  padding: 1.15rem;
  flex: auto;
  font-family: var(--primary-theme-font);
}
.zdcb-map-block.location-details--infowindow .map .gm-style .gm-style-iw-a .gm-style-iw-t .gm-style-iw-c .gm-style-iw-d {
  height: auto;
}
.zdcb-map-block.location-details--card .location-details .socials ul {
  margin: 10px 0 0;
}
.zdcb-map-block.location-details--card .location-details .socials ul li {
  margin-left: 0;
  margin-bottom: 0;
}
.zdcb-map-block.location-details--card .location-details .socials ul li a:link span.social__title, .zdcb-map-block.location-details--card .location-details .socials ul li a:visited span.social__title {
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  position: absolute !important;
  overflow: hidden !important;
}
.zdcb-map-block.location-details--card .location-details .socials ul, .zdcb-map-block.location-details--card .location-details .socials ul {
  margin-left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.zdcb-map-block.location-details--card .location-details .socials ul li a:link, .zdcb-map-block.location-details--card .location-details .socials ul li a:visited {
	color: var(--bs-primary-500);
	border: none;
	border-radius: 0;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	transition: color .25s ease-out, border-color .25s ease-out;
	display: flex;
}
.zdcb-map-block.location-details--card .location-details .socials ul li a:link:hover, .zdcb-map-block.location-details--card .location-details .socials ul li a:visited:hover {
  border: none;
  background: transparent;
  color: var(--bs-primary-400);
}
.zdcb-map-block.location-details--card .location-details .socials ul li a:link:hover .icon, .zdcb-map-block.location-details--card .location-details .socials ul li a:visited:hover .icon {
  color: var(--bs-primary-400);
}
.zdcb-map-block.location-details--card .location-details .socials ul li .icon {
  margin: 0;
}
.zdcb-map-block.location-details--card .location-details .socials ul li a:after {
  display: none;
}