/**
 * Service page hero — reuse homepage floating collage look.
 * Content differs per service; layout/energy matches home screenshot.
 */

.gw-sp-visual--collage {
  aspect-ratio: auto;
  min-height: 20rem;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  overflow: visible;
}

.gw-sp-visual--collage .gw-sp-collage,
.gw-sp-visual--collage .gw-hero-enterprise__visual {
  width: 100%;
  max-width: 100%;
  margin: 0;
  overflow: visible;
}

@media (min-width: 960px) {
  .gw-sp-visual--collage {
    min-height: 24rem;
  }

  .gw-sp-visual--collage .gw-hero-visual__stage {
    min-height: 24rem;
  }
}

/* Preserve homepage float motion on service pages under 1024 if grid used */
@media (max-width: 1023px) {
  .gw-sp-visual--collage .gw-hero-visual__stage {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
  }

  .gw-sp-visual--collage .gw-hero-visual__card--main {
    grid-column: 1 / -1;
  }
}

@media (min-width: 640px) and (max-width: 1023px) {
  .gw-sp-visual--collage .gw-hero-visual__stage {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gw-sp-visual--collage .gw-hero-visual__card--main {
    grid-column: 1 / 3;
  }

  .gw-sp-visual--collage .gw-hero-visual__card--seo {
    grid-column: 3;
    grid-row: 1 / 3;
  }
}

/* Subtle service-tint on main bars via existing brand tokens only */
.gw-sp-visual--collage .gw-hero-visual__code {
  white-space: pre-wrap;
}

.gw-sp-hero .gw-hero-visual__card {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.gw-sp-hero .gw-hero-visual__card:hover {
  box-shadow:
    0 8px 16px color-mix(in srgb, var(--color-text-heading) 8%, transparent),
    0 24px 48px color-mix(in srgb, var(--color-text-heading) 12%, transparent);
}

@media (prefers-reduced-motion: reduce) {
  .gw-sp-visual--collage .gw-hero-visual__card,
  .gw-sp-visual--collage .gw-hero-visual__dash-bars span {
    animation: none !important;
  }
}
