/* B.E.A.M. constellation (enlarged + richer motion — Igor 2026-07-03) */
.beam-viz{margin:0;width:100%;max-width:800px;justify-self:end}
@media(max-width:860px){.beam-viz{justify-self:start;max-width:600px;margin-top:10px}}
.beam-viz svg{width:100%;height:auto;display:block;overflow:visible}
.bm-line{stroke:rgba(255,255,255,.18);stroke-width:1}
.bm-ring{fill:var(--ink);stroke:rgba(255,255,255,.3);stroke-width:1}
.bm-ring-c{stroke:var(--crimson);stroke-width:1.4}
.bm-dot{fill:var(--crimson)}
.bm-ndot{fill:rgba(255,255,255,.55)}
.bm-pulse{fill:var(--crimson)}
.bm-sonar circle{fill:none;stroke:var(--crimson);stroke-width:1.3}
.bm-halo{fill:none;stroke:var(--crimson);stroke-width:1;opacity:.35}
/* Crimson rule under the B.E.A.M. heading (Igor 2026-07-03) */
#beam-h{display:inline-block;--beamu:1}
#beam-h::after{content:"";display:block;height:3px;width:92px;background:var(--crimson);border-radius:2px;margin-top:16px;transform:scaleX(var(--beamu));transform-origin:left center}
.bm-label{font-family:var(--font-body);font-size:13px;letter-spacing:.14em;fill:rgba(255,255,255,.66);font-weight:600}
.bm-label-c{fill:rgba(255,255,255,.86);font-size:13.5px}
@media(max-width:640px){
  .bm-label{font-size:19px;letter-spacing:.08em}
  .bm-label-c{font-size:20px}
  .bm-label-long{font-size:16px;letter-spacing:.06em}
}


/* Restore the original static graphic when motion is unavailable or printing. */
@media(prefers-reduced-motion:reduce){.beam-viz .bm-pulse,.beam-viz .bm-sonar{display:none}}
@media print{.beam-viz svg{visibility:visible!important}.beam-viz .bm-pulse,.beam-viz .bm-sonar{display:none!important}}
