/* NBC v7.383 — Global Premium Visual Integration · Part 2 / Editorial semantic visuals */
@layer nbc.premium-integration {
  body.page-article .p3-signature__visual[data-bsv-ready="true"]{
    --bsv-ink:#182219;--bsv-muted:rgba(24,34,25,.56);--bsv-line:rgba(35,73,47,.18);--bsv-line-strong:rgba(51,117,70,.58);--bsv-green:#397a50;--bsv-paper:#f1efe7;
    position:relative;isolation:isolate;overflow:hidden!important;background:transparent!important;color:var(--bsv-ink);padding:clamp(22px,3vw,38px) 0!important;border-block:1px solid rgba(25,51,38,.14)!important;box-shadow:none!important;border-radius:0!important;
  }
  body.page-article .bsv-diagram{position:relative;min-inline-size:0;max-inline-size:100%;padding-inline:clamp(6px,1vw,12px)}
  body.page-article .bsv-diagram__head{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin:0 0 15px;font:600 10px/1.3 var(--mono,ui-monospace,monospace);letter-spacing:.09em;text-transform:uppercase;color:rgba(35,73,47,.58)}
  body.page-article .bsv-diagram__head strong{font:inherit;color:#2f7248;font-weight:600;text-align:right}
  body.page-article .bsv-canvas{display:block;inline-size:100%;block-size:auto;max-block-size:230px;overflow:visible}
  body.page-article .bsv-line,body.page-article .bsv-branch,body.page-article .bsv-return,body.page-article .bsv-axis,body.page-article .bsv-loop{fill:none;stroke:var(--bsv-line);stroke-width:1.6;vector-effect:non-scaling-stroke}
  body.page-article .bsv-line--strong{stroke:var(--bsv-line-strong)}
  body.page-article .bsv-branch,body.page-article .bsv-return{stroke-dasharray:6 7}
  body.page-article .bsv-node{fill:var(--bsv-paper);stroke:rgba(47,114,72,.56);stroke-width:1.35;vector-effect:non-scaling-stroke}
  body.page-article .bsv-node--muted{stroke:rgba(24,34,25,.22)}
  body.page-article .bsv-gate{fill:rgba(57,122,80,.035);stroke:rgba(57,122,80,.56);stroke-width:1.35;vector-effect:non-scaling-stroke}
  body.page-article .bsv-event{fill:#397a50;filter:drop-shadow(0 0 6px rgba(57,122,80,.25));transform-box:fill-box;transform-origin:center}
  body.page-article .bsv-event--warm{fill:#8a7751;filter:drop-shadow(0 0 5px rgba(138,119,81,.2))}
  body.page-article .bsv-ghost{fill:none;stroke:rgba(57,122,80,.28);stroke-width:1.4;stroke-dasharray:4 5;vector-effect:non-scaling-stroke}
  body.page-article .bsv-area{fill:rgba(57,122,80,.035);stroke:rgba(57,122,80,.18);stroke-width:1;vector-effect:non-scaling-stroke}
  body.page-article .bsv-alert{fill:rgba(138,119,81,.07);stroke:rgba(138,119,81,.38);stroke-width:1.15;vector-effect:non-scaling-stroke}
  body.page-article .bsv-pulse{fill:none;stroke:rgba(57,122,80,.3);stroke-width:1.2;vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center}

  body.page-article .bsv-legend{display:grid;grid-template-columns:repeat(var(--bsv-cols,4),minmax(0,1fr));gap:0;margin-top:14px;border-top:1px solid rgba(25,51,38,.11)}
  body.page-article .bsv-legend__item{min-width:0;padding:12px clamp(8px,1.2vw,16px) 2px;border-right:1px solid rgba(25,51,38,.08)}
  body.page-article .bsv-legend__item:last-child{border-right:0}
  body.page-article .bsv-legend__item span{display:block;margin-bottom:4px;font:600 9px/1.25 var(--mono,ui-monospace,monospace);letter-spacing:.045em;color:rgba(35,73,47,.52)}
  body.page-article .bsv-legend__item strong{display:block;font-size:12px;line-height:1.35;font-weight:600;color:#1a271d}
  body.page-article .p3-signature__visual[data-bsv-ready="true"] figcaption{margin-top:16px!important;padding-top:12px!important;border-top:1px solid rgba(25,51,38,.11)!important;font:500 10px/1.45 var(--mono,ui-monospace,monospace)!important;letter-spacing:.035em!important;color:rgba(24,34,25,.56)!important}

  body.page-article .p3-signature__visual[data-bsv-ready="true"].is-active .bsv-branch{animation:bsv-dash-forward 8s linear infinite}
  body.page-article .p3-signature__visual[data-bsv-ready="true"].is-active .bsv-return{animation:bsv-dash-return 8s linear infinite}
  body.page-article .p3-signature__visual[data-bsv-ready="true"].is-active .bsv-event{animation:bsv-event 3.6s ease-in-out infinite}
  body.page-article .p3-signature__visual[data-bsv-ready="true"].is-active .bsv-pulse{animation:bsv-pulse 3.2s ease-out infinite}
  body.page-article .p3-signature__visual[data-bsv-ready="true"].is-active [data-bsv-delay="1"]{animation-delay:.45s}
  body.page-article .p3-signature__visual[data-bsv-ready="true"].is-active [data-bsv-delay="2"]{animation-delay:.9s}
  body.page-article .p3-signature__visual[data-bsv-ready="true"].is-active [data-bsv-delay="3"]{animation-delay:1.35s}

  /* Blog overview — a visual content sign, not a thumbnail. */
  body.page-template-blog .km-index-row{position:relative;isolation:isolate}
  body.page-template-blog .bsv-index-signal{display:block;inline-size:118px;block-size:38px;margin:7px 0 5px;opacity:.66;transition:opacity .3s ease}
  body.page-template-blog .bsv-index-signal svg{display:block;inline-size:100%;block-size:100%;overflow:visible}
  body.page-template-blog .bsv-index-signal :is(.bsv-line,.bsv-branch,.bsv-return,.bsv-loop){fill:none;stroke:rgba(57,122,80,.28);stroke-width:1.3;vector-effect:non-scaling-stroke}
  body.page-template-blog .bsv-index-signal :is(.bsv-branch,.bsv-return){stroke-dasharray:4 5}
  body.page-template-blog .bsv-index-signal .bsv-node{fill:transparent;stroke:rgba(57,122,80,.55);stroke-width:1.2;vector-effect:non-scaling-stroke}
  body.page-template-blog .bsv-index-signal .bsv-gate{fill:rgba(57,122,80,.035);stroke:rgba(57,122,80,.55);stroke-width:1.15;vector-effect:non-scaling-stroke}
  body.page-template-blog .bsv-index-signal .bsv-event{fill:#397a50}
  body.page-template-blog .km-index-row:hover .bsv-index-signal,body.page-template-blog .km-index-row:focus-visible .bsv-index-signal{opacity:1}
  body.page-template-blog .km-index-row:hover .bsv-index-signal .bsv-branch,body.page-template-blog .km-index-row:focus-visible .bsv-index-signal .bsv-branch{animation:bsv-dash-forward 2.8s linear infinite}

  @keyframes bsv-dash-forward{to{stroke-dashoffset:-52}}
  @keyframes bsv-dash-return{to{stroke-dashoffset:52}}
  @keyframes bsv-event{0%,100%{opacity:.45;transform:scale(.76)}50%{opacity:1;transform:scale(1.08)}}
  @keyframes bsv-pulse{0%{opacity:.55;transform:scale(.45)}80%,100%{opacity:0;transform:scale(1.45)}}

  @media(max-width:700px){
    body.page-article .p3-signature__visual[data-bsv-ready="true"]{padding-block:20px!important}
    body.page-article .bsv-diagram__head{display:block;font-size:10px;letter-spacing:.06em}
    body.page-article .bsv-diagram__head strong{display:block;margin-top:5px;text-align:left}
    body.page-article .bsv-canvas{max-block-size:190px}
    body.page-article .bsv-legend{grid-template-columns:repeat(2,minmax(0,1fr));--bsv-cols:2!important}
    body.page-article .bsv-legend__item{min-height:58px;border-bottom:1px solid rgba(25,51,38,.08)}
    body.page-article .bsv-legend__item span{font-size:9px}
    body.page-article .bsv-legend__item strong{font-size:11px;line-height:1.35}
    body.page-template-blog .bsv-index-signal{inline-size:105px;block-size:34px}
  }
  @media(prefers-reduced-motion:reduce){
    body.page-article [data-bsv-ready="true"] *,body.page-template-blog .bsv-index-signal *{animation:none!important;transition:none!important}
  }
}

/* v7.436 · semantic visual rail: reading copy stays narrow, evidence visuals may use the wide rail */
@media (min-width:901px){
  body.page-article .p3-signature[data-p3-signature]{
    width:min(calc(100vw - (2 * var(--nbc-page-gutter,32px))),1280px)!important;
    max-width:1280px!important;
    margin-left:50%!important;
    margin-right:0!important;
    transform:translateX(-50%);
  }
  body.page-article .p3-signature[data-p3-signature] .p3-signature__head{
    width:min(100%,1080px)!important;
    margin-inline:auto!important;
  }
  body.page-article .p3-signature[data-p3-signature] .p3-signature__visual[data-bsv-ready="true"]{
    width:100%!important;
    max-width:none!important;
  }
}
@media (max-width:900px){
  body.page-article .p3-signature[data-p3-signature]{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    transform:none!important;
  }
}
