/* Global API access illustration; compute residency is described in the copy. */
body[data-page="company"] .residency-grid { display: block; }
body[data-page="company"] .residency-copy { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 64px; align-items: start; }
body[data-page="company"] .residency-copy > p { margin-top: 0; }
.global-api-visual { position: relative; margin-top: 40px; font-family: var(--font-sans); }
.global-api-frame { position: relative; width: 100%; aspect-ratio: 2 / 1; overflow: hidden; border-radius: var(--radius-sm); }
.global-api-map, .global-api-routes { position: absolute; inset: 0; display: block; width: 100%; height: 100%; pointer-events: none; }
.global-api-map { opacity: .5; }
.global-api-route, .global-api-flow { fill: none; stroke-linecap: round; }
.global-api-route { stroke: rgba(var(--brand-blue-rgb), .26); stroke-width: 1; }
.global-api-flow { stroke: var(--brand-blue); stroke-width: 1.8; stroke-dasharray: 4 96; animation: beamTravel 4.8s linear infinite; filter: drop-shadow(0 0 2px rgba(var(--brand-blue-rgb), .45)); }
.global-api-node { fill: var(--brand-blue); stroke: #fff; stroke-width: 1.5; }
.global-api-halo { fill: var(--brand-blue); opacity: .09; }
.global-api-hub-label { fill: var(--text); font: 700 12px var(--font-sans); letter-spacing: -.01em; text-anchor: middle; }
.global-api-hub-accent { fill: var(--brand-blue); }
.global-api-caption { position: absolute; top: 48%; left: 45%; width: 46%; transform: translateX(-50%); text-align: center; }
.global-api-caption h3 { font-size: clamp(28px, 3.8vw, 46px); font-weight: 600; line-height: 1.18; letter-spacing: -.035em; }
.global-api-caption h3 span { display: block; }
.global-api-caption p { margin-top: 16px; color: var(--text-muted); font-size: 13px; }
.global-api-legend { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; padding-top: 16px; color: var(--text-secondary); font-size: 12px; }
.global-api-legend > span { display: inline-flex; align-items: center; gap: 8px; }
.global-api-legend i { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--brand-blue); }
.global-api-legend i.api-traffic { width: 22px; height: 2px; border-radius: 0; background: linear-gradient(90deg, rgba(var(--brand-blue-rgb), .15), var(--brand-blue)); }
.global-api-legend p { margin-left: auto; color: var(--text-muted); }
@media (max-width: 900px) {
  body[data-page="company"] .residency-copy { grid-template-columns: 1fr; gap: 16px; }
  .global-api-visual { margin-top: 28px; }
  .global-api-caption h3 { font-size: clamp(24px, 4vw, 36px); }
  .global-api-caption p { margin-top: 10px; font-size: 11px; }
  .global-api-legend p { width: 100%; margin-left: 0; }
}
@media (max-width: 600px) {
  .global-api-caption { position: relative; top: auto; left: auto; width: 100%; margin-top: 12px; transform: none; }
  .global-api-caption h3 { font-size: 28px; }
  .global-api-caption h3 span { display: inline; }
  .global-api-caption h3 span + span::before { content: " "; }
  .global-api-legend { margin-top: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .global-api-flow { animation: none; }
}
