/* Region-only hero maps using the frozen CTPF reference-dot geometry. */
.region-map-page .page-hero--background-map {
  min-height: 460px;
  padding: 92px 0 76px;
  isolation: isolate;
}

.region-map-page .page-hero--background-map::before {
  z-index: 1;
  opacity: 1;
  background: linear-gradient(to right, rgba(19, 27, 37, .82) 0, rgba(19, 27, 37, .72) 430px, rgba(19, 27, 37, .28) 720px, rgba(19, 27, 37, .04) 1040px);
  mask-image: none;
}

.region-map-page .page-hero--background-map > .shell {
  position: relative;
  z-index: 2;
}

.region-map-page .page-hero--background-map .hero-copy {
  max-width: 690px;
}

.region-map-page .page-hero--background-map h1 {
  font-size: 45px;
  line-height: 46px;
  letter-spacing: -2px;
}

.region-map-page .page-hero--background-map .lead {
  max-width: 460px;
  font-size: 16px;
  line-height: 27px;
}

.region-map-page .regional-intro-map {
  position: absolute;
  z-index: 0;
  top: 20px;
  right: 24px;
  width: 850px;
  height: 420px;
  overflow: visible;
  opacity: .9;
  pointer-events: none;
}

.region-map-page .regional-pop-map {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.region-map-page .regional-pop-map image {
  opacity: .9;
}

.region-map-page .regional-pop-marker {
  color: #63e552;
}

.region-map-page .regional-pop-core {
  r: .45px;
  fill: currentColor;
  filter: drop-shadow(0 0 .8px currentColor);
}

.region-map-page .regional-pop-pulse {
  r: .9px;
  fill: none;
  stroke: currentColor;
  stroke-width: .18px;
  opacity: .48;
}

.region-map-page .regional-pop-label {
  fill: currentColor;
  stroke: var(--bg);
  stroke-width: .28px;
  paint-order: stroke fill;
  font-family: Arial, sans-serif;
  font-size: 1.15px;
  font-weight: 700;
  letter-spacing: .02px;
}

@media (max-width: 900px) {
  .region-map-page .page-hero--background-map {
    min-height: 590px;
    padding: 62px 0 300px;
  }

  .region-map-page .regional-intro-map {
    right: 16px;
    bottom: 16px;
    left: 16px;
    top: auto;
    width: auto;
    height: 290px;
  }
}

@media (max-width: 544px) {
  .region-map-page .page-hero--background-map h1 {
    font-size: 34px;
    line-height: 36px;
  }

  .region-map-page .page-hero--background-map .lead {
    font-size: 16px;
    line-height: 26px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .region-map-page .regional-pop-pulse {
    opacity: .35;
  }
}
