/* Janneke Zorgt: wow-onderdeel "hartslag van uw team" (data-wow="hartslag") */
.hs-wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,3vw,44px);
  max-width:1120px;margin:0 auto;align-items:start}
.hs-monitor{position:relative;background:linear-gradient(160deg,#222C4E 0%,#1a2240 70%,#2c3452 100%);
  border-radius:var(--r-kaart);padding:20px 20px 18px;color:#fff;
  box-shadow:0 30px 60px -30px rgba(var(--ink-rgb),.6);overflow:hidden}
.hs-monitor::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 85% 0%,rgba(217,193,151,.22),transparent 55%)}
.hs-kop{position:relative;display:flex;align-items:center;gap:12px;margin-bottom:12px}
.hs-hart{width:34px;height:34px;flex:none;display:grid;place-items:center}
.hs-hart svg{width:30px;height:30px;fill:#d63437;transform-origin:50% 55%}
[data-wow="hartslag"].in-beeld .hs-hart svg{animation:hsKlop var(--hs-tempo,1.2s) ease-in-out infinite}
@keyframes hsKlop{0%,40%,100%{transform:scale(1)}15%{transform:scale(1.18)}28%{transform:scale(.96)}}
.hs-titel{font-weight:600;font-size:16px;letter-spacing:.02em}
.hs-status{margin-left:auto;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  border:1px solid var(--hs-kleur,#d63437);color:#fff;border-radius:999px;padding:5px 12px;white-space:nowrap;
  transition:border-color .85s var(--ease)}
.hs-scherm{position:relative;border-radius:14px;background:rgba(0,0,0,.22);overflow:hidden}
.hs-ecg{display:block;width:100%;height:clamp(170px,19vw,230px)}
.hs-raster{stroke:rgba(255,255,255,.07);stroke-width:1;fill:none}
.hs-lijn,.hs-gloed{fill:none;stroke:#d63437;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.hs-lijn{stroke-width:2.6}
.hs-gloed{stroke-width:9;opacity:.18;filter:blur(3px)}
/* de lijn tekent zich bij de eerste keer in beeld van links naar rechts */
.hs-onthul{transform-box:fill-box;transform-origin:0 50%;transform:scaleX(0);fill:#fff}
[data-wow="hartslag"].getekend .hs-onthul{transform:scaleX(1);transition:transform 1.6s cubic-bezier(.22,.61,.36,1)}
.hs-veeg{position:absolute;top:0;bottom:0;left:0;width:22%;pointer-events:none;
  background:linear-gradient(90deg,rgba(26,34,64,0),rgba(26,34,64,.85) 70%,rgba(26,34,64,0));
  transform:translateX(-100%);opacity:0}
[data-wow="hartslag"].in-beeld .hs-veeg{opacity:1;animation:hsVeeg 3.4s linear infinite}
@keyframes hsVeeg{from{transform:translateX(-100%)}to{transform:translateX(460%)}}
.hs-segmenten{display:grid;grid-template-columns:repeat(5,1fr);margin-top:10px}
.hs-seg{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12.5px;color:rgba(255,255,255,.7);
  border-top:2px solid rgba(214,52,55,.7);padding-top:7px;margin:0 4px;transition:border-color .85s var(--ease),color .85s var(--ease)}
.hs-seg.is-rustig{border-color:#7ce0a3;color:#fff}
.hs-voet{display:flex;align-items:center;gap:14px;margin-top:14px;font-size:14px}
.hs-teller b{font-size:20px;margin-right:3px}
.hs-meter{flex:1;height:6px;border-radius:99px;background:rgba(255,255,255,.14);overflow:hidden}
.hs-meter i{display:block;height:100%;width:0;background:#7ce0a3;border-radius:99px;transition:width .85s var(--ease)}

.hs-paneel{display:flex;flex-direction:column;gap:16px;text-align:center}
.hs-signalen{display:grid;gap:10px}
.hs-signaal{display:flex;align-items:center;gap:14px;width:100%;text-align:left;cursor:pointer;
  background:var(--wit);border:1.5px solid rgba(var(--ink-rgb),.14);border-radius:14px;padding:13px 16px;
  font:inherit;font-size:16px;font-weight:600;color:var(--ink);
  transition:border-color .45s var(--ease),background-color .45s var(--ease),transform .45s var(--ease)}
.hs-signaal:hover{border-color:rgba(var(--accent-rgb),.6);transform:translateY(-1px)}
.hs-nr{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;
  border:1.5px solid rgba(var(--accent-rgb),.55);color:var(--accent);transition:all .45s var(--ease)}
.hs-signaal[aria-pressed="true"]{border-color:#2e9e5b;background:#f2faf5}
.hs-signaal[aria-pressed="true"] .hs-nr{background:#2e9e5b;border-color:#2e9e5b;color:#fff}
.hs-aanpak{display:grid;gap:10px}
.hs-stap{background:var(--tint);border-radius:14px;padding:13px 18px;text-align:center;animation:hsIn .6s var(--ease) both}
.hs-stap[hidden]{display:none}
.hs-stap b{display:block;color:var(--ink);font-size:15px;margin-bottom:3px}
.hs-stap span{color:var(--tekst);font-size:14.5px;line-height:1.55}
@keyframes hsIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.hs-conclusie{margin:0;font-weight:600;color:var(--ink);font-size:17px}
.hs-mee{align-self:center}
/* uitgeschakeld: rustige omlijnde knop, geen vale vulling (controle 29-10-2026) */
.hs-mee[disabled]{background:transparent;color:var(--ink);border:1.5px solid rgba(var(--ink-rgb),.28);padding:12.5px 23.5px 13.5px;opacity:1;cursor:not-allowed;box-shadow:none}
.hs-mee[disabled]:hover{background:transparent;transform:none}
[data-wow="hartslag"].is-stabiel .hs-status{background:rgba(124,224,163,.16)}
@media(max-width:900px){
  .hs-wrap{grid-template-columns:1fr}
  .hs-seg{font-size:0;gap:0}
  .hs-seg::before{content:attr(data-nr);font-size:12.5px}
}
@media(max-width:480px){
  .hs-titel{font-size:14.5px}
  .hs-status{font-size:11.5px;padding:4px 9px}
  .hs-signaal{font-size:15px;padding:12px 14px}
}
@media(prefers-reduced-motion:reduce){
  .hs-stap{animation:none}
  .hs-meter i,.hs-seg{transition:none}
  [data-wow="hartslag"].in-beeld .hs-hart svg,[data-wow="hartslag"].in-beeld .hs-veeg{animation:none}
  .hs-veeg{display:none}
  .hs-onthul{transform:none}
  [data-wow="hartslag"].getekend .hs-onthul{transition:none}
}
