/* Homepage-only overlay, aligned with the original 1500 x 1200 channel SVG.
   The original artwork, including all brand marks, remains untouched. */
.mrh-channel-flow .mrh-flow-stage {
    position:relative; width:100%; max-width:412.5px; aspect-ratio:5 / 4; margin-inline:auto; isolation:isolate;
}
.mrh-channel-flow .mrh-flow-stage > img {
    display:block; width:100%; height:100%; max-height:none; object-fit:contain;
    animation:none !important; transform:none;
}
.mrh-channel-flow .mrh-flow-overlay {
    position:absolute; inset:0; width:100%; height:100%; pointer-events:none; opacity:0;
}
.mrh-channel-flow[data-flow-ready="true"] .mrh-flow-overlay { opacity:1; }
.mrh-flow-path { stroke:#16a8b5; stroke-width:7; stroke-linecap:round; }
.mrh-flow-packet { color:#069cab; }
.mrh-flow-packet.is-inbound { color:#2b8cdd; }
.mrh-flow-node { fill:none; stroke:#10a6b5; stroke-width:5; }
.mrh-flow-hub { fill:none; stroke:#13adb8; stroke-width:7; }
.mrh-channel-flow figcaption { margin-top:8px; }
.mrh-flow-controls { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:0 14px; }
.mrh-flow-phase { color:#16788a; font-size:12px; line-height:1.4; font-weight:600; }
.mrh-flow-toggle {
    display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:6px 10px;
    border:1px solid #d5eaf0; border-radius:9px; color:#2a6476; background:#fff;
    font:inherit; font-size:12px; line-height:1.35; cursor:pointer;
}
.mrh-flow-toggle:hover { background:#edf9fb; border-color:#7abfc9; }
.mrh-flow-toggle:focus-visible { outline:3px solid #087c92; outline-offset:3px; }
.mrh-flow-toggle span[aria-hidden] { display:inline-block; margin-right:4px; font-size:10px; }
.mrh-channel-flow .mrh-flow-caption { margin:5px 0 0; color:#567181; font-size:11px; line-height:1.5; text-align:center; }
.mrh-channel-flow [hidden] { display:none !important; }
@media (max-width:620px) {
    .mrh-channel-flow .mrh-flow-stage { max-width:337.5px; }
    .mrh-flow-controls { gap:4px 10px; }
    .mrh-flow-phase, .mrh-flow-toggle { font-size:12px; }
}
@media (prefers-reduced-motion:reduce) {
    .mrh-channel-flow .mrh-flow-overlay, .mrh-channel-flow .mrh-flow-controls { display:none; }
}
