.map-title {
  padding: 0 var(--site-margins);
  max-width: var(--site-width);
  margin: auto;
}

.map-short-description {
  padding: var(--site-margins) !important;
}

.product-map {
  border-top: 0.8rem solid var(--brand);
  max-width: 100% !important;
  padding: 0 !important;
}

.product-map .down-arrow {
  z-index: 1;
  position: relative;
}

.product-map .down-arrow::after {
  color: var(--brand);
}

.product-map .button {
  margin: 1rem 0 0;
  width: 100%;
}

.product-map .tags > i {
  font-size: 2rem;
  padding-right: 1rem;
}

.product-map p {
  font-family: bebas-neue-rounded, sans-serif;
  font-size: 20px; /* for some reason the global size for p isn't being picked up on the map */
  margin: 1rem 0;
}

.product-map h2 {
  color: var(--brand);
  font-size: 2rem;
  margin: 1rem 0;
}

.acf-map {
  height: 80vh;
}

.acf-map .infowindow-container {
  padding: 20px;
  width: 340px;
}

.acf-map img {
  object-fit: cover;
  height: 200px;
  width: 100%;
}

.map-product-grid-title {
  max-width: var(--site-width);
  padding: 2rem var(--site-margins) var(--site-margins);
  margin: auto;
}
/*noinspection CssUnresolvedCustomProperty*/
.map-product-grid {
  grid-template-columns: repeat(3, 1fr);
  padding: 0 var(--site-margins);
  max-width: var(--site-width);
  margin: auto auto 3rem auto;
  display: grid;
  gap: 4rem 2rem;
}

@media(max-width: 1200px) {
  .map-product-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 800px) {
  .map-product-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}

.map-product-grid img {
  object-fit: cover;
  height: 300px;
  width: 100%;
}

.map-product-grid h2 {
  font-size: 2rem;
  margin: 1rem 0;
}

.map-product-grid p {
  margin: 1rem 0;
}

.map-product-grid > div {
  border-bottom: 0.8rem solid var(--brand);
}

