/*
 MapBox
========================================================================== */
.wp-block-meta-mapbox .container {
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 992px) {
  .wp-block-meta-mapbox .container {
    flex-direction: row;
    max-height: 680px;
  }
}
.wp-block-meta-mapbox .map {
  position: relative;
  border-radius: var(--border-radius);
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .wp-block-meta-mapbox .map {
    aspect-ratio: 4/2.5;
  }
}
@media screen and (min-width: 992px) {
  .wp-block-meta-mapbox .map {
    aspect-ratio: 16/8;
    max-height: 580px;
  }
}
.wp-block-meta-mapbox .sidebar {
  background: white;
  border-radius: var(--border-radius);
  border: 1px solid rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 992px) {
  .wp-block-meta-mapbox .sidebar {
    width: clamp(17.5rem, 6.7361111111rem + 0.1736111111 * 100vw, 20.625rem);
    overflow: hidden;
    order: -1;
    flex-shrink: 0;
  }
}
.wp-block-meta-mapbox .listings {
  height: 100%;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
.wp-block-meta-mapbox .listings .item {
  display: block;
  border-bottom: 1px solid var(--color-border);
  padding: 30px;
  text-decoration: none;
  font-size: 0.9375rem;
  line-height: 1.5;
}
.wp-block-meta-mapbox .listings .item:last-child {
  border-bottom: none;
}
.wp-block-meta-mapbox .listings .item .title {
  display: block;
  color: var(--color-heading);
  font-weight: 600;
  text-decoration: none;
  font-family: var(--font-primary);
  letter-spacing: -0.02em;
  font-size: 1.125rem;
  margin-bottom: 4px;
  transition: color 0.2s ease;
}
.wp-block-meta-mapbox .listings .item .title small {
  font-weight: 400;
}
.wp-block-meta-mapbox .listings .item .title:hover {
  color: var(--color-links);
}
.wp-block-meta-mapbox .listings .item div a {
  color: #666;
}
.wp-block-meta-mapbox .listings .item .hours {
  margin-top: 8px;
  border-top: 1px solid var(--color-border);
  padding-top: 8px;
  font-size: 0.875rem;
  line-height: 1.4;
}
.wp-block-meta-mapbox .listings .item.active {
  background-color: var(--color-shade);
  box-shadow: inset -3px 0 0 0 var(--color-accent);
}
.wp-block-meta-mapbox .listings .item.active .title,
.wp-block-meta-mapbox .listings .item.active .title:hover {
  color: var(--color-primary-dark);
}
@media screen and (min-width: 992px) {
  .wp-block-meta-mapbox [data-type=listing] .map {
    flex-grow: 1;
    aspect-ratio: unset;
    max-height: unset;
  }
}
@media screen and (min-width: 992px) {
  .wp-block-meta-mapbox [data-align=right] .sidebar {
    order: 3;
  }
}
.wp-block-meta-mapbox [data-align=right] .active {
  box-shadow: inset 3px 0 0 0 var(--color-accent) !important;
}
.wp-block-meta-mapbox.alignfull .container {
  gap: 0;
}
.wp-block-meta-mapbox.alignfull .map {
  border-radius: 0;
}
.wp-block-meta-mapbox.alignfull .sidebar {
  border-radius: 0 !important;
}
.wp-block-meta-mapbox .mapboxgl-canvas-container canvas {
  position: absolute;
  top: -5px;
  height: calc(100% + 5px) !important;
}
.wp-block-meta-mapbox .mapboxgl-popup {
  min-width: 230px;
  max-width: 300px !important;
  padding-top: 20px;
  padding-bottom: 20px;
}
.wp-block-meta-mapbox .mapboxgl-popup .mapboxgl-popup-content {
  padding: 32px;
  font-size: 0.9375rem;
  line-height: 1.6;
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
}
.wp-block-meta-mapbox .mapboxgl-popup .mapboxgl-popup-close-button {
  color: var(--color-accent);
  padding: 0;
  width: 24px;
  height: 24px;
  text-decoration: none;
  border-radius: var(--button-radius);
  background: rgba(var(--color-accent), 0.1);
  top: 10px;
  right: 10px;
}
.wp-block-meta-mapbox .mapboxgl-popup .mapboxgl-popup-close-button:hover {
  background-color: var(--color-accent);
  color: var(--color-background);
}
.wp-block-meta-mapbox .mapboxgl-popup strong {
  display: block;
  margin: 0 0 5px 0;
  padding: 0;
  font-size: 16px;
  color: var(--color-heading);
  font-family: var(--font-primary);
}
.wp-block-meta-mapbox .mapboxgl-popup p {
  margin: 0 !important;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-geocoder {
  box-shadow: 0 0 0 1px var(--color-border);
  width: 320px;
  border-radius: 8px;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--icon-search {
  fill: darken-color(var(--color-shade), 15%);
  width: 16px;
  height: 16px;
  left: 12px;
  top: calc(50% - 8px);
}
.wp-block-meta-mapbox .mapboxgl-ctrl-geocoder input {
  padding-left: 42px;
  border: none;
  font-size: 0.875rem;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-geocoder button {
  width: 18px;
  height: 18px;
  padding: 0;
  top: calc(50% - 9px);
  align-items: center;
  justify-content: center;
  background: none !important;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-geocoder button .mapboxgl-ctrl-geocoder--icon-close {
  width: 14px;
  height: 14px;
  fill: var(--color-foreground);
  margin-top: 0;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-group:not(:empty) {
  box-shadow: 0 0 0px 1px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  border-radius: 3px;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-group:not(:empty) button {
  border-radius: 0px !important;
  outline: none !important;
  box-shadow: none !important;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-group:not(:empty) button:not(:first-child) {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.wp-block-meta-mapbox .mapboxgl-ctrl-group:not(:empty) .mapboxgl-ctrl-pitchtoggle-3d {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCI+ICAgIDx0ZXh0IHg9IjUwJSIgeT0iNTAlIiBkeT0iLjM1ZW0iIHN0eWxlPSJmb250LXNpemU6IDE0cHg7IGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLEFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmOyBmb250LXdlaWdodDogYm9sZDsgdGV4dC1hbmNob3I6IG1pZGRsZTsiPjNEPC90ZXh0Pjwvc3ZnPg==);
}
.wp-block-meta-mapbox .mapboxgl-ctrl-group:not(:empty) .mapboxgl-ctrl-pitchtoggle-2d {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCI+ICAgIDx0ZXh0IHg9IjUwJSIgeT0iNTAlIiBkeT0iLjM1ZW0iIHN0eWxlPSJmb250LXNpemU6IDE0cHg7IGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLEFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmOyBmb250LXdlaWdodDogYm9sZDsgdGV4dC1hbmNob3I6IG1pZGRsZTsiPjJEPC90ZXh0Pjwvc3ZnPg==);
}
.wp-block-meta-mapbox .mapboxgl-ctrl-group:not(:empty) .mapboxgl-ctrl-satellite {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAADFUlEQVRoQ+2Z620VMRCFTyogVABUEKiA0AEdQCpIqACoAFIB0AFUAHRAKkhSQaAC0Cd5Il9f2zt+LLBSLK3y43pnz5k587BzoI2vg43j1x2Bfx3BNSLwUNKppGNJjwPBH5K+STqXdDWT9GwC7wP4Gkb2vJpFYiYBvHzkBMbeJ8691W2zCHg8nwJBTmejJGYQQPOXnUAejebEDAI93je+w1GYQaBF+2mghnNhBoHfnfKx14YwDL0cEGyeAI3pQWcUriVRBLrXjAhsPok3X0YJf08UhksoH54hIdMvw9pTp5i/SHru3PtXRgn7iCcSUzw/pQYXXENOMOMwUscL4BD8r8fpGHDaH2bK9fY7vUY5qLyQRB3Hq7nlJUC06COfJDFaNK1WAoB+EzUf5MBEOUKASdaaGfawDxnX8hKgYrwrdM3SSOyJQKmHQOQkHEOHqtBhAP6yYoUPfcz87iGA3Q8V29jl+PmztKcWAcB/jQ7mqQ3C/Dk8IxIiujzIM7fIi2clEiUCNfCUQ3Ra9EpA4YlADLhUftlTJFEikGtIF5IIubdStBIwMlQ4pJNeELwNjtuJUo5ALrG+hzAveT023ksAGyiA0SQlsVcwcgRS7+N5LqlawANihICRINrxWWNvDMkRSIeyUpVZqtOxHSKIE1pXWqX27OQIpJ673+F9gAKYKsaiikCodSGlm+SlHcw5AkjlXvTSyN2Nge7xPhDSfPwV8uMW3poSsijwt8f7vNcloTSJiQhRaE3iVrmk+5EPcxJ/bbmSOFdGq91wFGnm/VwjRT5g23FkqZHRaV8nhiFBRfI2sl5e5AuDo/1vwey4G5m9UDrj0iUxNvVkFbyL03KDY7EMLw1zuW5oBCHCMIfx3vxAKlwEMMyVJt5qI/WcBzwHdYjyEBUe9JpKDUlQntExD1JZKq+LFwAeAngcD0Gk9wqxNR84qnLUJMLV5SVgRggzCb4WEYBjP3dAyhJpJWBGkANkiMwoGUDjaUA3V7heArE30DOE7LHGk97SkewsEh6g9gxVsxkElmS66u93BFZ1r8P45iPwByxsojFFAJ0UAAAAAElFTkSuQmCC);
  background-size: auto 18px;
  background-position: center;
  background-repeat: no-repeat;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-group:not(:empty) .mapboxgl-ctrl-map {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACsklEQVRoQ+2Y8dEMQRDF3xcBIkAEiAARIAJEgAgQASJABIgAESACRIAIqF/ZqTpXt9Ovp2d9dVVf/3VVt9PTr7vf69490ZHbyZHHrzMAp13B2RW4Jem2pEuSzku6ugD8LOmnpG+S3kp6Nwv4DAAE+mwJnN+OAQYgjxZgzpmDz1QBPJb0cMn2SBAAeS7p6chhzowCINPvd1pk9P52jha7OVKNEQD0NcG77eKCgx93JAHGtiwAgv66QfAtYEBcy1QiC+DTxLZZyzIVAIRlGQBPJEHa/2GQmvtCcwFkWuf7oiwfdvoZ3txYFOtiGNXfmXHZaSUXwCtJd42L0XVksWfILnMjsteS7kUPuQB+GMSlb10FoSLwqWdU4cIMAKwGbwJHTub3XTiVQFaZ2KvmVCBqH3qe3WfEkM0eJ14svCkBgIzXO9GNZL+5i6rwcSF/CUCk/Zne3w8k4kI4E5wW+h30huOj56Lk37m8dIFBjJJ/BwBydq4TyJYt9CuSbwfA0ZM4klGkkLE/Ymy2PQmeIqOM85enNMjuSyKBJRklQ2QqsgwXIvlsd7FKwMESAA6jx1ciBMvUpOw9e2AsfJznywVrTNccEuPAaaN2EZxgI2WKtuWOjDPNmbzu2hHuQVzoAuDZaG+JkpX5396vMgAyVcgEe+hZK/vZCmS4UAEQLnC7zjMV4ByvhXxS2dIyapbiQAsagqIkW5j9Mt8uz1aAc7zgs144spoBmWqdCgDOIoVIZG/JywTP0obP7tA65HCkAs3PLD4QPL7cDwL/4KgAyA64tYqE+06vlFUAVRCl4EfmwFoyRoZcOfiZALKVmBL8bAAuiGnBbwGgTWu+pu1LbElt1np3BokP+WZ95k2qDbsvy27PRjvVtgLQJnb7Us17QHpIOUi3BODcX37mDEA5hUUHR1+BP8bGfjEsCdpwAAAAAElFTkSuQmCC);
  background-size: auto 18px;
  background-position: center;
  background-repeat: no-repeat;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-bottom-left,
.wp-block-meta-mapbox .mapboxgl-ctrl-bottom-right {
  display: none !important;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-compass span {
  background: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #222;
}
.wp-block-meta-mapbox .mapboxgl-ctrl-compass span::before {
  content: "";
  background-color: #333;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M429.6 92.1c4.9-11.9 2.1-25.6-7-34.7s-22.8-11.9-34.7-7l-352 144c-14.2 5.8-22.2 20.8-19.3 35.8s16.1 25.8 31.4 25.8H224V432c0 15.3 10.8 28.4 25.8 31.4s30-5.1 35.8-19.3l144-352z'/%3E%3C/svg%3E");
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  width: 14px;
  height: 14px;
  transform: rotate(-15deg);
}
.wp-block-meta-mapbox [aria-label="Map marker"] {
  top: 11px;
  width: 20px;
  height: 20px;
  pointer-events: none;
}
.wp-block-meta-mapbox [aria-label="Map marker"]::before {
  content: "";
  animation: pulse 3s infinite ease;
  width: 100px;
  height: 100px;
  position: absolute;
  top: calc(50% - 50px);
  left: calc(50% - 50px);
  background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0) 25%, rgba(57, 86, 209, 0.3) 100%);
  border-radius: 100px;
  border: 1px solid rgba(57, 86, 209, 0.3);
}
.wp-block-meta-mapbox [aria-label="Map marker"] svg {
  display: none;
}
@media screen and (min-width: 992px) {
  .wp-block-meta-mapbox.acf-block-preview .container {
    max-height: 600px;
  }
}
.wp-block-meta-mapbox.acf-block-preview .map .note {
  position: absolute;
  bottom: 20px;
  left: 24px;
  right: 24px;
  z-index: 2;
  font-size: 0.875rem;
  text-align: center;
  line-height: 1.5;
  border-radius: var(--border-radius);
  background: white;
  padding: 10px;
}
.wp-block-meta-mapbox.acf-block-preview .map img {
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform-style: preserve-3d;
}
.wp-block-meta-mapbox.acf-block-preview .sidebar {
  width: clamp(17.5rem, 8.8888888889rem + 0.1388888889 * 100vw, 20rem);
  font-size: 0.9375rem;
  line-height: 1.4;
}
.wp-block-meta-mapbox.acf-block-preview .sidebar .location {
  padding: 24px;
}
.wp-block-meta-mapbox.acf-block-preview .sidebar .location:not(:first-child) {
  border-top: 1px solid var(--color-border);
}
.wp-block-meta-mapbox.acf-block-preview .sidebar h3 {
  font-size: 1.125rem;
}
.wp-block-meta-mapbox.acf-block-preview .sidebar address {
  font-style: normal;
}
.wp-block-meta-mapbox .missing-key {
  background: hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), 0.15);
  color: hsl(var(--color-accent-h), var(--color-accent-s), 25%);
  border-radius: var(--border-radius);
  padding: 24px 32px;
  text-align: center;
  margin: 0 auto;
  max-width: 768px;
}
@keyframes pulse {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
