.ai-technologies article > header > p:not(.text-muted),
.ai-technologies article section[id] p {
  margin-bottom: 1.5rem;
  text-align: justify;
}

.ai-technologies .ai-technologies-map-scroll {
  width: 100%;
  max-width: 100%;
  overflow: auto;
  overscroll-behavior-x: contain;
  border: 1px solid var(--border-color);
  border-radius: 1rem;
  background: #fbfcfe;
}

/* Keep the map inside the article column; only narrow screens scroll. */
.ai-technologies .ai-technologies-map-scroll #gp-ml-map {
  display: block;
  width: 100%;
  min-width: 36rem;
  max-width: 64rem;
  height: auto;
  margin-inline: auto;
}

/* The shared stylesheet already reserves 115px for the fixed 90px header. */
.ai-technologies section[id] {
  scroll-margin-top: 1rem;
}

.ai-technologies .row > * {
  min-width: 0;
}

#main.ai-technologies p a {
  color: var(--text-theme-color);
  text-decoration: none;
}

/* Anchor targets receive focus without framing the entire text section. */
.ai-technologies section[tabindex="-1"]:focus {
  outline: none;
}

.ai-technologies .ai-technologies-map-scroll:focus-visible,
.ai-technologies p a:focus-visible,
.ai-technologies .blog-sidbar a:focus-visible {
  outline: 3px solid var(--text-color);
  outline-offset: 4px;
}

@media (max-width: 767.98px) {
  .ai-technologies .ai-technologies-map-scroll {
    max-height: 70vh;
  }
}
