.bm{
  --navy:#202E5A; --red:#D71920; --ivory:#F6F4EF; --paper:#FFFFFF; --ink:#141B33; --slate:#4A5270; --line:#E1DDD3; --mist:#DCE1F0;
  --display:"Anton","Arial Narrow",sans-serif; --label:"Barlow Condensed","Arial Narrow",sans-serif; --body:"Barlow","Helvetica Neue",sans-serif;
  color-scheme:light;background:var(--ivory);color:var(--ink);font:16px/1.5 var(--body);
}
.bm *{box-sizing:border-box}
.bm a{color:var(--navy)}
.bm :focus-visible{outline:3px solid var(--red);outline-offset:2px}
.bm-top{background:var(--navy);color:#fff;padding-inline:16px;padding-block:28px 30px;position:relative;overflow:hidden}
.bm-top-in{max-width:1320px;margin:0 auto;display:flex;flex-wrap:wrap;gap:16px 40px;align-items:flex-end;justify-content:space-between;position:relative}
.bm-eyebrow{display:inline-block;background:var(--red);padding:5px 14px;font:700 .8rem/1.2 var(--label);letter-spacing:.22em;text-transform:uppercase}
.bm h1{margin:12px 0 0;font:400 clamp(2.4rem,6vw,4.6rem)/.95 var(--display);text-transform:uppercase;letter-spacing:.01em;text-wrap:balance;color:#fff}
.bm-lede{margin:10px 0 0;max-width:60ch;color:var(--mist);font-size:1.05rem}
.bm-counts{display:flex;gap:28px}
.bm-count b{display:block;font:400 2.4rem/1 var(--display);font-variant-numeric:tabular-nums}
.bm-count span{font:700 .78rem var(--label);letter-spacing:.16em;text-transform:uppercase;color:var(--mist)}
.bm-ecg{position:absolute;left:0;bottom:6px;height:40px;width:100%}
.bm-modes{max-width:1320px;margin:0 auto;padding-inline:16px;padding-top:20px;display:flex;gap:6px;flex-wrap:wrap}
.bm-mode{border:0;background:transparent;padding:10px 16px;border-bottom:3px solid transparent;font:400 1.15rem/1 var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--slate);cursor:pointer}
.bm-mode[aria-selected="true"]{color:var(--navy);border-bottom-color:var(--red)}
.bm-wrap{max-width:1320px;margin:0 auto;padding-inline:16px;padding-block:16px 40px;display:grid;grid-template-columns:380px minmax(0,1fr);gap:20px}
@media (max-width:900px){.bm-wrap{grid-template-columns:1fr}.bm-mapcol{order:-1}}
.bm-side{display:flex;flex-direction:column;gap:14px;min-width:0}
@media (min-width:901px){.bm-side{max-height:calc(100vh - 40px);position:sticky;top:20px}}
.bm-search{position:relative;display:block}
.bm-search input{width:100%;border:2px solid var(--line);background:var(--paper);border-radius:40px;padding:12px 16px 12px 44px;font:500 1rem var(--body);color:var(--ink)}
.bm-search input:focus{border-color:var(--navy);outline:none}
.bm-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%)}
.bm-chips{display:flex;flex-wrap:wrap;gap:6px}
.bm-chip{border:2px solid var(--line);background:var(--paper);border-radius:40px;padding:6px 12px;font:700 .8rem var(--label);letter-spacing:.08em;text-transform:uppercase;color:var(--slate);cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.bm-chip[aria-pressed="true"]{border-color:var(--navy);background:var(--navy);color:#fff}
.bm-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}
.bm-dot.sq{border-radius:2px;transform:rotate(45deg)}
.bm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;overflow:auto;min-height:0;padding-right:2px}
@media (max-width:900px){.bm-list{max-height:420px}}
.bm-item{width:100%;text-align:left;border:2px solid transparent;background:var(--paper);border-radius:14px;padding:12px 14px;cursor:pointer;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;font:inherit;color:inherit}
.bm-item:hover{border-color:var(--line)}
.bm-item[aria-current="true"]{border-color:var(--navy)}
.bm-item .bm-dot{margin-top:7px}
.bm-nm{font-weight:600;line-height:1.3}
.bm-pg{grid-column:2;font-size:.9rem;color:var(--slate);line-height:1.35}
.bm-lc{grid-column:2;font:600 .78rem var(--label);letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.bm-none{color:var(--slate);font-size:.95rem;padding:8px 4px}
.bm-mapcol{display:flex;flex-direction:column;gap:14px;min-width:0}
.bm-mapbox{position:relative;background:#EDEAE2;border-radius:18px;overflow:hidden;height:min(640px,70vh);min-height:360px;border:1px solid var(--line)}
.bm-map{position:absolute;inset:0}
.bm-ctl{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;gap:6px;z-index:2}
.bm-ctl button{width:44px;height:44px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--navy);font:700 1.2rem var(--body);cursor:pointer}
.bm-ctl .bm-all{font:700 .72rem var(--label);letter-spacing:.06em}
.bm-legend{position:absolute;left:12px;bottom:12px;background:rgba(255,255,255,.95);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:5px;font:600 .78rem var(--label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);z-index:2;max-width:calc(100% - 80px)}
.bm-legend div{display:flex;align-items:center;gap:8px}
.bm-err{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;color:var(--slate)}
.bm-detail{background:var(--paper);border-radius:18px;padding:20px 22px;border:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 24px;align-items:start}
@media (max-width:640px){.bm-detail{grid-template-columns:1fr}}
.bm-detail h2{margin:0;font:400 1.9rem/1.05 var(--display);text-transform:uppercase;color:var(--navy);text-wrap:balance}
.bm-prog{margin:6px 0 0;font-size:1.1rem;font-weight:600}
.bm-facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.bm-tag{font:700 .75rem/1 var(--label);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;border-radius:6px;background:var(--ivory);color:var(--navy)}
.bm-note{margin:10px 0 0;color:var(--slate);font-size:.95rem;max-width:70ch}
.bm-go{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 22px;border-radius:40px;background:var(--red);color:#fff!important;text-decoration:none;font:700 1rem var(--label);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.bm-go:hover{background:#B3141B}
.bm-foot{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;color:var(--slate);font-size:.9rem}
.bm-foot p{margin:0;max-width:70ch}
