.atlas-map-detailed {
  position: relative;
  min-height: 0;
  margin: 0;
}

.atlas-map-detailed::before {
  display: none;
}

.atlas-map-detailed svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
  filter: url(#map-shadow);
}

.atlas-map-detailed .map-region {
  color: #102746;
  text-decoration: none;
  cursor: pointer;
}

.atlas-map-detailed .region-shape {
  stroke: rgba(255, 255, 255, .98);
  stroke-width: 6;
  stroke-linejoin: round;
  transition: filter .2s ease, transform .2s ease;
  transform-box: fill-box;
  transform-origin: center;
}

.atlas-map-detailed .map-region:hover .region-shape,
.atlas-map-detailed .map-region:focus .region-shape {
  filter: brightness(1.035) saturate(1.05);
  transform: translateY(-3px);
}

.atlas-map-detailed .map-region:focus {
  outline: none;
}

.atlas-map-detailed .map-region:focus .region-shape {
  stroke: #176ce7;
  stroke-width: 8;
}

.atlas-map-detailed .icon-disc {
  fill: #fff;
  stroke: rgba(255, 255, 255, .82);
  stroke-width: 4;
  filter: drop-shadow(0 6px 9px rgba(45, 76, 112, .14));
}

.atlas-map-detailed .icon-stroke {
  fill: none;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.atlas-map-detailed .icon-stroke.blue { stroke: #347df3; }
.atlas-map-detailed .icon-stroke.purple { stroke: #7962d9; }
.atlas-map-detailed .icon-stroke.teal { stroke: #20a69f; }
.atlas-map-detailed .icon-fill.purple { fill: #7962d9; }
.atlas-map-detailed .icon-fill.teal { fill: #20a69f; }
.atlas-map-detailed .icon-fill.coral { fill: #f06452; }
.atlas-map-detailed .icon-fill.amber { fill: #e9a300; }

.atlas-map-detailed .region-title {
  fill: #102746;
  font: 800 22px/1.08 system-ui, -apple-system, "Segoe UI", sans-serif;
  text-anchor: middle;
}

.atlas-map-detailed .region-title.small {
  font-size: 18px;
}

.atlas-map-detailed .region-title.light {
  fill: #fff;
}

.atlas-map-detailed .topic-lines {
  fill: none;
  stroke: rgba(255, 255, 255, .92);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.atlas-map-detailed .topic-lines circle {
  fill: #fff;
  stroke: rgba(52, 88, 126, .18);
  stroke-width: 1.5;
}

.atlas-map-detailed .topic-label {
  fill: #405775;
  font: 600 12px/1 system-ui, -apple-system, "Segoe UI", sans-serif;
}

.atlas-map-detailed .topic-label.light {
  fill: rgba(255, 255, 255, .98);
}

.atlas-map-detailed .central-question circle {
  fill: #fff;
  stroke: rgba(255, 255, 255, .92);
  stroke-width: 5;
  filter: drop-shadow(0 14px 15px rgba(44, 89, 153, .22));
}

.atlas-map-detailed .central-question text {
  fill: #216ef0;
  font: 900 65px/1 system-ui, -apple-system, "Segoe UI", sans-serif;
  text-anchor: middle;
}

.atlas-map-detailed .central-links {
  fill: none;
  stroke: rgba(255, 255, 255, .96);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-dasharray: 8 7;
}

.atlas-map-detailed .map-contours {
  fill: none;
  stroke: #d6e1eb;
  stroke-width: 2;
  opacity: .50;
}

@media (max-width: 1200px) {
  .atlas-map-detailed {
    max-width: 940px;
    margin: 0 auto;
  }
}

@media (max-width: 700px) {
  .atlas-map-detailed {
    width: calc(100% + 30px);
    margin: 8px -15px 0;
  }

  .atlas-map-detailed .topic-label {
    display: none;
  }

  .atlas-map-detailed .topic-lines {
    opacity: .48;
  }

  .atlas-map-detailed .region-title {
    font-size: 27px;
  }

  .atlas-map-detailed .region-title.small {
    font-size: 22px;
  }
}
