/* One banner contract for all AI business detail pages. */
.adoption-page { --detail-banner-height: 440px; --detail-caption-height: 52px; }
.adoption-page .ax-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px 40px;
  width: min(1440px, 92%);
  height: auto;
  min-height: 0;
  overflow: visible;
  padding-top: 8px;
}
.adoption-page .ax-hero .breadcrumb { position: static; grid-column: 1 / -1; }
.adoption-page .ax-hero .ax-heading { position: static; min-height: 205px; padding-top: 24px; }
.adoption-page .ax-hero .ax-intro { position: static; align-self: end; padding-bottom: 4px; }
.adoption-page .ax-hero .hero-stages { position: static; grid-column: 1 / -1; }
.adoption-page .ax-hero .hero-stages a { line-height: 22px; }
.adoption-page .ax-hero > figure {
  position: static;
  grid-column: 1 / -1;
  display: grid;
  grid-template-rows: var(--detail-banner-height) var(--detail-caption-height);
  gap: 12px;
  min-width: 0;
  margin: 0;
}
.adoption-page .ax-hero .adoption-photos,
.adoption-page .ax-hero .infra-visual > img { height: var(--detail-banner-height); min-height: 0; }
.adoption-page .ax-hero figcaption {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  min-height: 0;
}
#diagram-home {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--detail-banner-height);
  aspect-ratio: auto;
  overflow: hidden;
  background: #05141e;
}
#diagram-home .communication-stage {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 1;
  flex-shrink: 0;
}
#diagram-home .communication-stage img { width: 100%; height: auto; }
@media (max-width: 1000px) {
  .adoption-page { --detail-banner-height: 320px; }
}
@media (max-width: 800px) {
  .adoption-page .ax-hero { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .adoption-page .ax-hero .ax-heading { min-height: 180px; }
  .adoption-page .ax-hero .ax-intro { min-height: 140px; padding: 0; }
}
@media (max-width: 700px) {
  .adoption-page { --detail-banner-height: calc(92vw * 941 / 1672); --detail-caption-height: 72px; }
  .adoption-page .ax-hero .ax-intro { min-height: 160px; }
}
