/* Shared organic backgrounds, with a light variant for the closing CTA. */
#sources.heatmap-section,
#standards.heatmap-section,
#integrations.heatmap-section,
#contact.heatmap-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:0;
  background:#fbfdff;
  --atmosphere-ink:#063e34;
  --atmosphere-glow:#209b86;
}
#integrations.heatmap-section{
  --atmosphere-ink:#072844;
  --atmosphere-glow:#258cb4;
  padding-block:clamp(90px,8vw,140px);
}
/* A cooler teal distinguishes professional review from the forest-green registry. */
#standards.heatmap-section{
  --atmosphere-ink:#0b3c44;
  --atmosphere-glow:#369da3;
}
#sources.heatmap-section,
#standards.heatmap-section{
  padding-top:clamp(176px,17vw,264px);
  padding-bottom:clamp(164px,16vw,248px);
}
#integrations.heatmap-section::before,
#integrations.heatmap-section::after,
#firms.workspace-showcase::after,
#integrations + .expertise-marquee-section::before{content:none}
.heatmap-section>.section-atmosphere{
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  contain:strict;
}
.heatmap-section>.section-atmosphere>canvas{display:block;width:100%;height:100%}
/* Extra interior light pools for integrations, above either canvas renderer.
   Keep the endpoint fades untouched and the glow behind all readable content. */
#integrations.heatmap-section>.section-atmosphere::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse 21% 23% at 44% 37%,rgba(41,118,231,.30),rgba(29,104,212,.11) 42%,transparent 78%),
    radial-gradient(ellipse 16% 21% at 59% 52%,rgba(35,196,192,.23),rgba(28,145,180,.09) 44%,transparent 80%),
    radial-gradient(ellipse 24% 20% at 43% 78%,rgba(31,129,225,.29),rgba(28,111,212,.10) 46%,transparent 82%),
    radial-gradient(ellipse 17% 24% at 96% 52%,rgba(40,148,226,.28),rgba(26,115,189,.08) 45%,transparent 80%),
    radial-gradient(ellipse 18% 18% at 14% 40%,rgba(31,186,191,.18),transparent 78%);
  -webkit-mask-image:linear-gradient(transparent,black 20%,black 82%,transparent);
  mask-image:linear-gradient(transparent,black 20%,black 82%,transparent);
}
/* Static, dependency-free fallback, including before WebGL is ready. */
#sources.heatmap-section,
#standards.heatmap-section,
#integrations.heatmap-section,
#contact.heatmap-section{
  background:
    radial-gradient(ellipse 24% 160px at 18% 60px,rgba(102,221,200,.35),transparent),
    radial-gradient(ellipse 22% 150px at 77% calc(100% - 90px),rgba(87,189,204,.35),transparent),
    linear-gradient(to bottom,#fbfdff 0,var(--atmosphere-glow) 80px,var(--atmosphere-ink) 190px,
      var(--atmosphere-ink) calc(100% - 190px),var(--atmosphere-glow) calc(100% - 80px),#fbfdff 100%);
}
#contact.heatmap-section{
  --atmosphere-ink:#edf7f7;
  --atmosphere-glow:#c4e7ea;
  padding-block:clamp(120px,11vw,170px);
}
body>footer.atmosphere-neighbor{border-top:0}
#integrations.heatmap-section .ecosystem{background:transparent}
.atmosphere-neighbor{position:relative;isolation:isolate}
.atmosphere-neighbor>.atmosphere-seam{
  position:absolute;
  z-index:-1;
  left:0;
  right:0;
  height:72px;
  pointer-events:none;
}
.atmosphere-seam--top{top:0;background:linear-gradient(#fbfdff,rgba(251,253,255,0))}
.atmosphere-seam--bottom{bottom:0;background:linear-gradient(rgba(251,253,255,0),#fbfdff)}
@media(max-width:760px){
  #sources.heatmap-section,#standards.heatmap-section{padding-block:190px}
  #integrations.heatmap-section{padding-block:164px}
}
@media(prefers-reduced-motion:reduce){.section-atmosphere{animation:none!important}}
