/* Broadcast Monitor product site. Colors and typography follow the active DJP theme. */
.djp-marketing.bm-site { color:var(--defaulttext); }
.bm-nav { padding: 1em 0; }
.bm-masthead, .bm-main-nav, .bm-subnav, .bm-editions { display:flex; align-items:center; flex-wrap:wrap; gap:.6em 1.2em; }
.bm-masthead { justify-content:space-between; }
.bm-brand { display:inline-flex; align-items:center; gap:.65em; color:var(--defaulttext); font-weight:700; font-size:1.25em; text-decoration:none; }
.bm-brand img { flex:none; }
.bm-main-nav a, .bm-subnav a { text-decoration:none; }
.bm-nav [aria-current] { color:var(--defaulttext); font-weight:700; text-decoration:underline; text-underline-offset:.3em; }
.bm-subnav { border-top:var(--borderstyle); margin-top:1em; padding-top:.8em; font-size:.9em; }
.bm-eyebrow { color:var(--textaccent); text-transform:uppercase; letter-spacing:.07em; font-weight:500; font-size:.85em; }
.bm-editions { gap:.4em; margin:.75em 0; }
.bm-edition { border:1px solid; border-radius:999px; color:var(--defaulttext); padding:.23em .8em; font-size:.78em; font-weight:500; line-height:1.4; text-decoration:none; white-space:nowrap; }
.bm-edition-free { background:var(--alertsuccessbg); border-color:var(--alertsuccessbar); }
.bm-edition-express { background:var(--alertinfobg); border-color:var(--alertinfobar); }
.bm-edition-professional { background:var(--alertwarningbg); border-color:var(--alertwarningbar); }
.bm-edition:hover { color:var(--defaulttext); text-decoration:underline; }
.bm-link-card { display:block; text-decoration:none; color:var(--defaulttext); }
.bm-link-card:hover { box-shadow:var(--hovershadow); }
.bm-link-card h3 { color:var(--textaccent2); }
.bm-link-card p { color:var(--defaulttext); }
.bm-jump { display:flex; flex-wrap:wrap; gap:.5em 1.2em; margin:1.2em 0 0; }
.bm-reading { max-width:50em; }
.bm-steps { counter-reset:bm-step; list-style:none; margin:1.5em 0; padding:0; }
.bm-steps li { counter-increment:bm-step; border-top:var(--borderstyle); padding:1em 0 1em 2.7em; position:relative; }
.bm-steps li::before { content:counter(bm-step); position:absolute; left:0; top:1em; width:1.8em; height:1.8em; display:grid; place-items:center; border-radius:50%; background:var(--accentbackground); color:var(--defaulttext); font-weight:700; }
.bm-note { border-left:3px solid var(--textaccent2); padding:.8em 1.1em; background:var(--palebackground); margin:1.5em 0; }
.bm-shot { position:relative; margin:0; }
.bm-shot-image { position:relative; }
.bm-shot img { width:100%; height:auto; display:block; border-radius:var(--radius); }
.bm-marker { position:absolute; width:1.7em; height:1.7em; display:grid; place-items:center; transform:translate(-50%,-50%); border:2px solid var(--whitecolor); border-radius:50%; background:var(--buttondarkaccent); color:var(--whitecolor); font-weight:700; pointer-events:none; box-shadow:0 1px 5px var(--blackcolor); }
.bm-shot-caption { font-size:.88em; color:var(--textaccent); padding:.75em 0; }
.bm-readouts { padding-left:1.6em; }
.bm-readouts li { padding:.45em 0 .45em .4em; }
.bm-readouts li::marker { color:var(--textaccent2); font-weight:700; }
.bm-scope-groups { display:flex; flex-wrap:wrap; gap:.6em 1em; }
.bm-related { display:flex; flex-wrap:wrap; gap:.7em 1.4em; }
.bm-feature-list { columns:2; column-gap:2.5em; }
.bm-feature-list li { break-inside:avoid; padding:.3em 0; }
.bm-next .djp-cta-row { margin-top:1em; }
.bm-marketing-summary { max-width:48em; }
.bm-site :target { scroll-margin-top:4em; }
.bm-site a:focus-visible { outline:2px solid var(--textaccent2); outline-offset:4px; }
@media(max-width:736px) { .bm-masthead { align-items:flex-start; } .bm-main-nav { width:100%; } .bm-subnav { gap:.6em 1em; } .bm-feature-list { columns:1; } .bm-marker { font-size:.7em; } }
