.project-google-map {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.project-google-map__canvas {
  width: 100%;
  min-height: min(var(--project-map-height, 420px), 70vh);
  background: #eee;
}

.project-google-map__consent {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1rem, 4vw, 3rem);
  color: #fff;
  text-align: center;
  background: rgba(33, 31, 30, .9);
}

.project-google-map__consent[hidden] {
  display: none;
}

.project-google-map__consent-inner {
  width: min(100%, 38rem);
}

.project-google-map__status:empty {
  display: none;
}

.project-google-map__status {
  margin: 0 0 1.25rem;
  color: #fff;
  font-size: clamp(1rem, 2vw, 1.25rem);
  line-height: 1.5;
}

.project-google-map__load {
  appearance: none;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  margin: 0;
  padding: .7rem 1.4rem;
  border: 2px solid #ff7200;
  border-radius: 2px;
  color: #211f1e;
  font: inherit;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  background: #ff7200;
  cursor: pointer;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.project-google-map__load:hover {
  border-color: #fff;
  background: #fff;
}

.project-google-map__load:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

.project-google-map__load:disabled {
  opacity: .65;
  cursor: not-allowed;
}

@media (max-width: 600px) {
  .project-google-map__canvas {
    min-height: 360px;
  }

  .project-google-map__consent {
    padding: 1rem;
  }

  .project-google-map__load {
    width: 100%;
    max-width: 20rem;
  }
}
