/* One background plane carries the existing brand glow across section boundaries. */
body.naxit-home-page,
body.naxit-detail-page {
  position: relative;
  isolation: isolate;
  background-color: #0b0b0f;
}
.naxit-ambient-background {
  position: absolute;
  z-index: -1;
  inset: 0 0 auto;
  height: var(--glow-end, 3000px);
  overflow: hidden;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(180deg, #000, #000 calc(100% - 320px), transparent);
  mask-image: linear-gradient(180deg, #000, #000 calc(100% - 320px), transparent);
}
.naxit-ambient-cluster {
  position: absolute;
  top: var(--glow-y, 500px);
  left: var(--glow-x, 65%);
  width: clamp(760px, 90vw, 1450px);
  height: clamp(720px, 75vw, 1120px);
  transform: translate(-50%, -50%);
  opacity: var(--glow-opacity, .38);
}
.naxit-ambient-orb {
  position: absolute;
  width: 55%;
  height: 65%;
  border-radius: 50%;
  filter: blur(clamp(90px, 10vw, 160px));
}
.naxit-ambient-orb--blue {
  top: 8%;
  left: 3%;
  background: var(--brandColor1, #5875ff);
  animation: naxit-gradient-drift-a 15s ease-in-out infinite;
}
.naxit-ambient-orb--violet {
  top: 28%;
  left: 28%;
  background: var(--brandColor2, #a685df);
  animation: naxit-gradient-drift-b 18s ease-in-out infinite;
}
.naxit-ambient-orb--magenta {
  top: 5%;
  right: 0;
  width: 38%;
  height: 50%;
  opacity: .45;
  background: var(--brandColor3, #c300ff);
  animation: naxit-gradient-drift-a 21s ease-in-out infinite reverse;
}

/* The reference and team glow overlap on the shared canvas instead of forming
   two bright, circular patches around the phone/section boundary. */
.naxit-home-page .naxit-ambient-cluster[data-glow-anchor="#case-studies"] {
  opacity: .32;
}
.naxit-home-page .naxit-ambient-cluster[data-glow-anchor="#team"] {
  opacity: .28;
}
.naxit-home-page .naxit-ambient-cluster[data-glow-anchor="#case-studies"] .naxit-ambient-orb,
.naxit-home-page .naxit-ambient-cluster[data-glow-anchor="#team"] .naxit-ambient-orb {
  filter: blur(clamp(140px, 14vw, 210px));
}

/* Upper homepage sections share the plane; the accepted team/footer glows stay local. */
.naxit-home-page .naxit-about-section,
.naxit-home-page .naxit-services-section,
.naxit-home-page .naxit-references-section,
.naxit-home-page .naxit-team-section { background: transparent; }
.naxit-home-page .naxit-about-section > .bg-blur-block,
.naxit-home-page .naxit-services-section > .bg-blur-block,
.naxit-home-page .naxit-references-section > .bg-blur-block { display: none !important; }

/* The phone and founder section sit on the same glow plane without a stacking seam. */
.naxit-home-page .naxit-references-section,
.naxit-home-page .naxit-team-section {
  z-index: auto;
  isolation: auto;
  overflow-x: clip;
  overflow-y: visible;
}

/* Detail pages use the same dark canvas from hero through the closing CTA. */
.naxit-detail-page .nav-banner-wrapper,
.naxit-detail-page .work-progress-section,
.naxit-detail-page .why-us-section,
.naxit-detail-page .workflow-section,
.naxit-detail-page .our-story-section,
.naxit-detail-page .core-value-section,
.naxit-detail-page .client-section,
.naxit-detail-page .faq-section,
.naxit-detail-page .cta-section { background: transparent; }
.naxit-detail-page .nav-banner-wrapper > .bg-blur-block,
.naxit-detail-page .core-value-section > .bg-blur-block,
.naxit-detail-page .our-story-section > .bg-blur-block { display: none; }
.naxit-detail-page .our-story-card {
  color: #f5f5f7;
}
.naxit-detail-page .our-story-year,
.naxit-detail-page .our-story-text { color: #f5f5f7; }

@media (max-width: 767px) {
  .naxit-ambient-cluster { width: 760px; height: 800px; }
  .naxit-ambient-orb { filter: blur(100px); }
}
@media (prefers-reduced-motion: reduce) {
  .naxit-ambient-orb { animation: none; }
}
