/* IranTranzit Task12 additive dot-scene styles.
   Scoped to #ecosystem .hm-dots only. Fixed dot size; transform-only motion. */
#ecosystem .hm-dots{
  position:relative;
  width:100%;
  height:100px;
  margin:0 0 10px;
  pointer-events:none;
  overflow:hidden;
  z-index:0;
  opacity:.72;
}
#ecosystem .hm-dots .hm-dot{
  position:absolute;
  top:0;
  left:0;
  width:3px;
  height:3px;
  border-radius:50%;
  background:var(--hm-green,#2f6b4f);
  opacity:.72;
  will-change:auto;
}
#ecosystem.hm-live .hm-dots .hm-dot{
  will-change:transform;
}
#ecosystem .hm-dots .hm-dot:nth-child(3n+1){
  background:var(--hm-green-deep,#1f4f38);
  opacity:.62;
}
#ecosystem .hm-dots .hm-dot:nth-child(3n+2){
  background:var(--hm-ink,#203028);
  opacity:.34;
}
#ecosystem .hm-dots .hm-dot:nth-child(5n+1){
  opacity:.82;
}
@media (max-width:800px){
  #ecosystem .hm-dots{
    height:56px;
    margin:0 0 8px;
    opacity:.58;
  }
}
@media (prefers-reduced-motion:reduce){
  #ecosystem .hm-dots{
    opacity:.5;
  }
  #ecosystem.hm-live .hm-dots .hm-dot{
    will-change:auto;
  }
}
