.ai-technologies {
  background: var(--light-color);
}

.ai-technologies .ai-technologies-container {
  max-width: 1600px;
}

.ai-technologies .ai-technologies-intro {
  max-width: 60rem;
}

.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 original SVG labels readable; scrolling stays inside the frame. */
.ai-technologies .ai-technologies-map-scroll #gp-ml-map {
  width: 100%;
  min-width: 88rem;
  max-width: none;
  height: auto;
}

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

.ai-technologies .ai-technologies-toc {
  padding: 1.25rem;
  border: 1px solid var(--border-color);
  border-radius: 1rem;
}

.ai-technologies .ai-technologies-toc summary {
  cursor: pointer;
  font-weight: 600;
}

.ai-technologies .ai-technologies-toc nav {
  margin-top: 1rem;
}

.ai-technologies .ai-technologies-toc ul ul {
  padding-left: 1rem;
  margin-top: 0.25rem;
}

.ai-technologies .ai-technologies-toc a {
  display: inline-block;
  padding: 0.2rem 0;
  color: var(--text-color);
}

.ai-technologies .ai-technologies-toc a:hover {
  text-decoration: underline;
}

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

.ai-technologies .ai-technologies-map-scroll:focus-visible,
.ai-technologies .ai-technologies-toc summary:focus-visible,
.ai-technologies .ai-technologies-toc a:focus-visible,
.ai-technologies section[tabindex="-1"]: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;
  }
}
