/* Home: a conversation moves through connected tools, follow-up and insight. */
.beyond-calls { background:#f4f6f4; overflow:clip; }
.bc-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:48px; }
.bc-heading .kicker { display:block; margin-bottom:20px; }
.bc-heading h2 { font-size:clamp(38px,4.4vw,62px); line-height:1.07; font-weight:500; }
.bc-heading h2>span { color:var(--green); }
.bc-heading>p { font-size:17px; line-height:1.65; padding-bottom:4px; }
.bc-stories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.bc-story { min-width:0; }
.bc-chapter { display:flex; align-items:center; gap:10px; margin-bottom:18px; color:#31493e; font-size:12px; font-weight:650; }
.bc-symbol { width:30px; height:30px; display:grid; place-items:center; border:1px solid #cfdad3; border-radius:50%; background:#fff8; }
.bc-symbol svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
.bc-chapter>i { flex:1; height:1px; background:linear-gradient(90deg,#c4d2c9,#c4d2c900); margin-left:6px; }
.bc-visual { position:relative; isolation:isolate; display:flex; flex-direction:column; height:338px; padding:20px; overflow:hidden; border:1px solid #d8e2da; border-radius:22px; background:#e8f0e9; font-size:12px; line-height:1.4; box-shadow:0 12px 24px -23px #1f4e34a0; }
.bc-visual::before { position:absolute; z-index:-1; content:""; inset:0; background-image:radial-gradient(#376a491c .7px,transparent .7px); background-size:14px 14px; mask-image:linear-gradient(#000,transparent 90%); }
.bc-visual strong,.bc-visual small { display:block; }
.bc-visual svg { fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.bc-scene-label { display:flex; align-items:center; gap:6px; margin-bottom:22px; font-size:9px; font-weight:650; letter-spacing:.065em; text-transform:uppercase; color:#385646; }
.bc-scene-label>span:last-child { margin-left:auto; font-size:8px; letter-spacing:.02em; font-weight:500; opacity:.85; }
.bc-led,.bc-result-dot { display:inline-block; flex:none; width:5px; height:5px; background:#008757; border-radius:50%; }
.bc-conversation { display:flex; align-items:center; gap:9px; padding:12px 11px; background:#fff; border:1px solid #d6e2d9; border-radius:12px; box-shadow:0 6px 16px -12px #42634c55; }
.bc-avatar { display:grid; place-items:center; flex:none; width:30px; height:30px; border-radius:10px; background:#24533e; color:#fff; font-size:15px; }
.bc-conversation strong { font-size:10px; font-weight:650; }
.bc-conversation p { font-size:10px; margin-top:4px; color:#516557; }
.bc-mini-wave { margin-left:auto; flex:none; display:flex; align-items:center; gap:2px; height:24px; }
.bc-mini-wave i { width:2px; height:7px; border-radius:3px; background:#008757; transform-origin:center; }
.bc-mini-wave i:nth-child(2),.bc-mini-wave i:nth-child(4) { height:14px; }
.bc-mini-wave i:nth-child(3) { height:21px; }
.bc-bridge { position:relative; height:39px; flex:none; }
.bc-bridge>span { position:absolute; right:0; top:10px; font-size:8px; color:#516b5a; }
.bc-bridge svg { width:100%; height:100%; }
.bc-wire { stroke:#aac3b1; }
.bc-packet { stroke:#008757; stroke-width:2.6; opacity:0; }
.bc-record { padding:12px; border:1px solid #c9dbce; background:#ffffffed; border-radius:12px; }
.bc-record-head { display:flex; align-items:center; gap:8px; margin-bottom:12px; }
.bc-record-icon { width:28px; height:30px; display:grid; place-items:center; border-radius:7px; background:#eff4f0; color:#4c795b; }
.bc-record-icon svg { width:17px; height:19px; }
.bc-record-head small { font-size:8px; color:#62776a; margin-bottom:2px; }
.bc-record-head strong { font-size:11px; font-weight:650; }
.bc-saved { display:flex; align-items:center; gap:3px; margin-left:auto; color:#006b45; font-size:9px; }
.bc-saved svg { width:13px; height:13px; }
.bc-record-line { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 0; border-top:1px solid #e4ebe6; font-size:9px; }
.bc-record-line>span { color:#66796d; }
.bc-record-line strong { font-size:9px; color:#344b3d; font-weight:600; }
.bc-result { display:flex; align-items:center; gap:6px; margin-top:auto; padding-top:13px; font-size:9px; color:#46624f; }
.bc-outbound { background:#143d2d; border-color:#143d2d; color:#fff; }
.bc-outbound::before { background-image:radial-gradient(#ccf5de26 .7px,transparent .7px); }
.bc-outbound .bc-scene-label { color:#d5e9dc; }
.bc-outbound .bc-led,.bc-outbound .bc-result-dot { background:#8ed8ae; }
.bc-campaign-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:17px; }
.bc-campaign-head small,.bc-quality>div>small { font-size:9px; font-weight:400; color:#c0d8c9; margin-bottom:6px; }
.bc-campaign-head strong,.bc-quality>div>strong { font-size:18px; font-weight:500; line-height:1.25; letter-spacing:-.025em; }
.bc-dial { position:relative; flex:none; display:grid; place-items:center; width:40px; height:40px; border:1px solid #7faa904f; border-radius:50%; background:#ffffff08; color:#b9e6cd; }
.bc-dial svg { width:17px; height:17px; }
.bc-dial i { position:absolute; inset:-1px; border:1px solid #82c7a0; border-radius:50%; opacity:0; }
.bc-leads { display:grid; gap:7px; }
.bc-lead { display:flex; align-items:center; gap:9px; padding:9px 10px; border:1px solid #ffffff1c; border-radius:9px; background:#ffffff0b; }
.bc-lead-avatar { display:grid; place-items:center; flex:none; width:27px; height:27px; border-radius:8px; background:#ffffff10; color:#c8e2d2; font-size:11px; }
.bc-lead strong { font-size:10px; font-weight:600; }
.bc-lead small { font-size:8px; color:#bbd5c5; margin-top:2px; }
.bc-outcome { margin-left:auto; padding:4px 7px; border-radius:5px; background:#b2e3c51c; color:#c6f0d6; font-size:8px; }
.bc-outcome--later { color:#f6dfb7; background:#e4c28b12; }
.bc-outbound .bc-result { color:#bfd9c9; }
.bc-intelligence { background:#eff0f5; border-color:#dce0e8; }
.bc-intelligence::before { background-image:radial-gradient(#424e6e20 .7px,transparent .7px); }
.bc-intelligence .bc-scene-label { color:#4e586f; }
.bc-quality { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.bc-quality>div>small { color:#5d6578; }
.bc-score { display:grid; place-items:center; flex:none; position:relative; width:66px; height:66px; }
.bc-score>svg { position:absolute; inset:0; width:100%; height:100%; transform:rotate(-90deg); stroke-width:3; }
.bc-score-track { stroke:#d6dce0; }
.bc-score-value { stroke:#008757; stroke-dasharray:88 100; }
.bc-score>strong { text-align:center; font-size:20px; font-weight:550; line-height:1.1; }
.bc-score>strong>small { font-size:7px; color:#63706a; font-weight:500; margin-top:4px; }
.bc-timeline { margin-top:19px; }
.bc-waveform { position:relative; padding:5px 0; }
.bc-waveform>svg { width:100%; height:43px; stroke:#8ba89b; stroke-width:2.1; }
.bc-playhead { position:absolute; top:0; bottom:0; left:100%; width:1px; background:#008757; opacity:0; }
.bc-playhead::after { position:absolute; content:""; width:4px; height:4px; background:#008757; border-radius:50%; top:-1px; left:-1.5px; }
.bc-moment { position:absolute; top:0; bottom:0; width:16px; border-radius:4px; background:#bc842720; border-bottom:2px solid #b48238; left:23%; }
.bc-moment--two { left:67%; background:#00875713; border-color:#008757; }
.bc-timecodes { display:flex; justify-content:space-between; margin-top:4px; font-size:8px; color:#667281; }
.bc-insights { display:grid; gap:6px; margin-top:15px; }
.bc-insight { display:flex; gap:10px; align-items:center; padding:8px 10px; border:1px solid #dce1e7; background:#ffffffb3; border-radius:7px; font-size:10px; }
.bc-insight-time { color:#747d8b; font-size:8px; }
.bc-insight-mark { width:5px; height:5px; background:#008757; border-radius:50%; margin-left:auto; }
.bc-insight-mark--amber { background:#ac782d; }
.bc-intelligence .bc-result { color:#53685e; }
.bc-copy { padding:24px 2px 0; }
.bc-copy h3 { font-size:23px; font-weight:550; line-height:1.2; letter-spacing:-.035em; }
.bc-copy p { margin-top:12px; font-size:14px; line-height:1.7; }
.bc-copy .text-link { margin-top:19px; font-size:12px; gap:8px; }
.bc-copy .icon { width:16px; height:16px; }
.bc-foot { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:38px; border-top:1px solid #dbe2dc; padding-top:19px; }
.bc-foot p { font-size:11px; color:#5e6c63; }
.bc-replay { display:flex; align-items:center; justify-content:center; gap:8px; flex:none; padding:10px 13px; border:1px solid #cad8ce; border-radius:30px; background:transparent; color:#315540; font-size:11px; transition:background .2s; }
.bc-replay:hover { background:#e5eee7; }
.bc-replay[hidden] { display:none; }
.bc-replay svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
/* One finite five-second scene. Content defaults to its readable final state. */
.bc-visual.is-playing .bc-enter { animation:bc-arrive .65s cubic-bezier(.2,.7,.25,1) var(--delay,0ms) both; }
.bc-visual.is-playing .bc-packet { animation:bc-signal 1.1s ease-in-out .65s both; }
.bc-visual.is-playing .bc-mini-wave i { animation:bc-speak .6s ease-in-out 0s 4 alternate; }
.bc-visual.is-playing .bc-mini-wave i:nth-child(2n) { animation-delay:.18s; }
.bc-visual.is-playing .bc-dial i { animation:bc-ring 1.6s ease-out 0s 2; }
.bc-visual.is-playing .bc-dial i+i { animation-delay:.6s; }
.bc-visual.is-playing .bc-lead { animation-name:bc-deal; }
.bc-visual.is-playing .bc-score-value { animation:bc-score 2.5s cubic-bezier(.2,.7,.25,1) .3s both; }
.bc-visual.is-playing .bc-playhead { animation:bc-scan 3.9s linear .3s both; }
.bc-visual.is-playing .bc-moment { animation:bc-arrive .4s ease-out 1.3s both; }
.bc-visual.is-playing .bc-moment--two { animation-delay:2.6s; }
.bc-visual[data-paused="true"] * { animation-play-state:paused !important; }
@keyframes bc-arrive { from { opacity:0; transform:translateY(9px); } to { opacity:1; transform:none; } }
@keyframes bc-deal { from { opacity:0; transform:translate(28px,6px) rotate(2deg); } to { opacity:1; transform:none; } }
@keyframes bc-signal { 0% { opacity:0; stroke-dasharray:12 100; stroke-dashoffset:14; } 15%,80% { opacity:1; } 100% { opacity:0; stroke-dasharray:12 100; stroke-dashoffset:-100; } }
@keyframes bc-speak { from { transform:scaleY(.4); } to { transform:scaleY(1); } }
@keyframes bc-ring { 0% { opacity:.6; transform:scale(.9); } 100% { opacity:0; transform:scale(1.65); } }
@keyframes bc-score { from { stroke-dasharray:0 100; } to { stroke-dasharray:88 100; } }
@keyframes bc-scan { 0% { left:0; opacity:0; } 3%,96% { opacity:1; } 100% { left:100%; opacity:0; } }
@media (min-width:851px) and (max-width:1100px) {
  .bc-stories { gap:16px; }
  .bc-visual { padding:15px 12px; height:330px; }
  .bc-scene-label { font-size:8px; }
  .bc-conversation { gap:6px; padding:10px 8px; }
  .bc-mini-wave { display:none; }
  .bc-copy h3 { font-size:21px; }
  .bc-campaign-head strong,.bc-quality>div>strong { font-size:16px; }
  .bc-campaign-head small,.bc-quality>div>small { font-size:8px; }
}
@media (max-width:850px) {
  .bc-heading { align-items:flex-start; flex-direction:column; gap:20px; margin-bottom:36px; }
  .bc-heading>p { font-size:15px; }
  .bc-stories { grid-template-columns:1fr; gap:36px; }
  .bc-story { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); column-gap:28px; }
  .bc-chapter { grid-column:1/-1; }
  .bc-copy { align-self:center; padding:0; }
  .bc-visual { height:338px; }
}
@media (max-width:600px) {
  .bc-heading h2 { font-size:clamp(33px,9vw,48px); }
  .bc-heading>p br { display:none; }
  .bc-stories { gap:38px; }
  .bc-story { display:block; }
  .bc-chapter { margin-bottom:12px; }
  .bc-visual { padding:20px; height:338px; }
  .bc-copy { padding-top:20px; }
  .bc-copy h3 { font-size:23px; }
  .bc-copy .text-link { min-height:32px; margin-top:12px; }
  .bc-foot { align-items:flex-start; flex-direction:column; gap:15px; }
}
@media (max-width:360px) {
  .bc-visual { padding:18px 13px; }
  .bc-conversation { gap:6px; }
  .bc-campaign-head strong,.bc-quality>div>strong { font-size:17px; }
  .bc-campaign-head small,.bc-quality>div>small { font-size:8px; }
}
@media (prefers-reduced-motion:reduce) {
  .bc-visual *, .bc-replay { animation:none !important; transition:none !important; }
  .bc-replay { display:none; }
}
