/* Ambient overlay + sky-blue micro-glow borders */
.cruz-ambient {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 5;
  opacity: 0.85;
  pointer-events: none;
  overflow: hidden;
}

.cruz-ambient-canvas {
  display: block;
  width: 100%;
  height: 100%;
}

body.jr-has-top-nav {
  position: relative;
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(14, 165, 233, 0.06), transparent 60%),
    radial-gradient(900px 500px at 90% 0%, rgba(14, 165, 233, 0.04), transparent 55%),
    #f7f9fc;
}

body.jr-has-top-nav > .gw-browse-module.jr-top-nav-host,
body.jr-has-top-nav > .jjBanner20260811,
body.jr-has-top-nav > .jjService20260811,
body.jr-has-top-nav > .jjAbout20260811,
body.jr-has-top-nav > .jjFeatureCards20260811,
body.jr-has-top-nav > .jjCapabilities20260811,
body.jr-has-top-nav > .jjFooter20260811,
body.jr-has-top-nav > main,
body.jr-has-top-nav > .jjHero20260811,
body.jr-has-top-nav > .jjTrustBadge20260811,
body.jr-has-top-nav > .jjCoreServices20260811,
body.jr-has-top-nav > .jjAboutPage20260811,
body.jr-has-top-nav > .jjTeamPage20260811,
body.jr-has-top-nav > div:not(.cruz-ambient) {
  position: relative;
}

/* Keep nav above ambient overlay */
body.jr-has-top-nav > .gw-browse-module.jr-top-nav-host {
  z-index: 10;
}

/* Sky-blue micro glow on content cards / footer */
.jjService20260811 .jj-card,
.jjFeatureCards20260811 .jj-fc-card,
.jjCapabilities20260811 .jj-cap-card,
.jjFooter20260811 .jj-foot-container,
.jjTrustBadge20260811 .jj-tb-item,
.jjTeamPage20260811 .jj-team-card,
.jjCoreServices20260811 .jj-cs-card {
  border: 1px solid rgba(14, 165, 233, 0.32);
  box-shadow:
    0 0 0 1px rgba(14, 165, 233, 0.1),
    0 0 16px rgba(14, 165, 233, 0.16);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.jjService20260811 .jj-card:hover,
.jjFeatureCards20260811 .jj-fc-card:hover,
.jjCapabilities20260811 .jj-cap-card:hover,
.jjTrustBadge20260811 .jj-tb-item:hover {
  border-color: rgba(14, 165, 233, 0.55);
  box-shadow:
    0 0 0 1px rgba(14, 165, 233, 0.18),
    0 0 22px rgba(14, 165, 233, 0.28);
}

@media (prefers-reduced-motion: reduce) {
  .cruz-ambient {
    display: none;
  }
}
