<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Cobl · Who can move the deal</title><style>@font-face{font-family:"STK Bureau Serif Variable Complete";src:url(https://cdn.prod.website-files.com/68ee0ef582e0631038583e04/6a85b5fbe174d6db1359e4af_STKBureauSerifVariableComplete.woff2) format("woff2");font-weight:150 700;font-style:normal;font-display:swap}</style><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Instrument+Sans:wght@400;500&display=swap" rel="stylesheet"><style>:root{--tp:#181818;--ts:#545352;--tt:#767473;--bs:#efeeed;--se:#f8f8f8;--sk:#e8e7e6;--line:rgba(10,10,10,.09);--ac:#9eff78;--ok:#2ebd43;--oktx:#216b2e;--lime:#e9fae3;--risk:#d9453d;--risktx:#a82e29;--riskbg:rgba(217,69,61,.09);--warn:#f08a24;--warntx:#994d0d;--warnbg:rgba(255,153,51,.15);--serif:"STK Bureau Serif Variable Complete","STK Bureau Serif",Georgia,serif;--ui:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--meta:"Instrument Sans",Inter,sans-serif;--ease:cubic-bezier(.22,1,.36,1);--io:cubic-bezier(.65,0,.35,1)}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg)}body{font-family:var(--ui);color:var(--tp);-webkit-font-smoothing:antialiased}.serif{font-family:var(--serif);font-weight:400}#bg{position:absolute;left:0;top:0;transform-origin:0 0;overflow:hidden}#stage{position:absolute;left:50%;top:50%;transform-origin:center;transition:opacity .4s ease;will-change:opacity}.rs #stage{opacity:0}.nt *,.nt{transition:none!important}#stage>*{position:absolute}[data-a]{opacity:0}.play [data-a]{animation-duration:calc(var(--t,550) * 1ms);animation-delay:calc(var(--d,0) * 1ms);animation-fill-mode:both;animation-timing-function:var(--ease);animation-iteration-count:1}.play [data-a="rise"]{animation-name:rise}.play [data-a="fade"]{animation-name:fade}.play [data-a="pop"]{animation-name:pop}.play [data-a="left"]{animation-name:fromleft}@keyframes rise{from{opacity:0;translate:0 calc(var(--y,10) * 1px)}to{opacity:1}}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes pop{from{opacity:0;scale:var(--sc,.88)}to{opacity:1}}@keyframes fromleft{from{opacity:0;translate:calc(var(--x,-12) * 1px) 0}to{opacity:1}}.type-ch{opacity:0}.type-ch.is-typed{opacity:1}.type-ch.is-caret{position:relative}.type-ch.is-caret::after{content:"";position:absolute;left:100%;top:.12em;bottom:.08em;width:1.5px;margin-left:1px;background:currentColor;border-radius:1px;animation:caret 900ms steps(1,end) infinite}.type-ch.is-caret.is-typing::after{animation:none}@keyframes caret{50%{opacity:0}}#cur{left:0;top:0;width:22px;height:30px;z-index:50;pointer-events:none;opacity:0;transition:transform 850ms var(--io),opacity 300ms ease}#cur.on{opacity:1}#cur svg{width:20px;height:auto;display:block;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));transform-origin:3px 3px;transition:transform 140ms var(--ease)}#cur.down svg{transform:scale(.86)}.ic{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}[data-a]{opacity:1}#cur{display:none}}:root{--bg:#e9a58f}#bg .ph{position:absolute;inset:0;background:url(https://cdn.prod.website-files.com/68ee0ef582e0631038583e04/6abfb2c0a5552aefc231695e_background.jpg) center/100% 100% no-repeat}#bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,20,50,.0),rgba(40,20,50,.12))}.ic{width:15px;height:15px}.hd{translate:-50% 0;padding:4px 11px;border-radius:999px;background:rgba(28,18,38,.42);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-family:var(--meta);font-size:11.5px;line-height:15px;letter-spacing:.2px;white-space:nowrap}.wr{display:none;left:0;top:0;pointer-events:none}.wr svg{position:absolute;left:0;top:0;overflow:visible}.w{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:.85;transition:stroke-dashoffset 700ms cubic-bezier(.45,0,.25,1)}.w.dr{stroke-dashoffset:0}.fd{position:absolute;left:0;top:0;width:10px;height:10px;offset-anchor:50% 50%;border-radius:50%;background:var(--ac);border:2px solid #181818;offset-distance:0%;offset-rotate:0deg;opacity:0}.fd.go{animation:flow 700ms cubic-bezier(.45,0,.25,1) both}@keyframes flow{0%{offset-distance:0%;opacity:0}15%{opacity:1}85%{opacity:1}100%{offset-distance:100%;opacity:0}}.card{border-radius:14px;background:#fff;box-shadow:0 14px 34px rgba(60,20,50,.22);opacity:0;translate:-14px 0;transition:opacity 450ms var(--ease),translate 550ms var(--ease)}.card.in{opacity:1;translate:0 0}.bE{padding:14px 16px;display:flex;flex-direction:column;gap:7px}.eh{display:flex;align-items:center;justify-content:space-between}.eh em{font-style:normal;font-size:11px;color:var(--tt)}.risk{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;background:var(--riskbg);color:var(--risktx);font-size:11.5px;line-height:16px;font-weight:600;white-space:nowrap}.risk i{width:7px;height:7px;border-radius:50%;background:var(--risk)}.bE.in .risk i{animation:blink 1200ms ease-in-out 3}@keyframes blink{50%{opacity:.25}}.et{font-size:19px;line-height:24px;color:#181818;white-space:nowrap}.el{display:flex;align-items:center;gap:7px;font-size:12.5px;line-height:17px;color:var(--ts);white-space:nowrap}.el .ic{width:14px;height:14px;color:var(--tt)}.el b{font-weight:600;color:var(--risktx)}.node{padding:14px 16px;border-radius:16px;color:#fff;background:rgba(22,16,30,.84);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.16);box-shadow:0 22px 50px rgba(40,10,40,.3);display:flex;flex-direction:column;gap:10px}.nh{display:flex;align-items:center;gap:9px;font-family:var(--meta);font-size:12px;line-height:15px;color:rgba(255,255,255,.75);white-space:nowrap}.cobl-mark{flex:none;width:22px;height:22px;display:block}.cw{flex:1;min-height:0;position:relative}.chart{position:absolute;left:50%;top:50%;width:330px;height:146px;margin:-73px 0 0 -165px}.cl{position:absolute;left:0;top:0;width:330px;height:146px;overflow:visible}.cl path{fill:none;stroke:rgba(255,255,255,.22);stroke-width:1.2}.cl .way{stroke:var(--ac);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 800ms cubic-bezier(.45,0,.25,1);filter:drop-shadow(0 0 4px rgba(158,255,120,.6))}.found .cl .way{stroke-dashoffset:0}.pp{position:absolute;width:108px;height:40px;display:flex;align-items:center;gap:6px;padding:0 6px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);transition:border-color 300ms,background-color 300ms,box-shadow 300ms}.pp i{flex:none;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center;font:600 8px/1 var(--ui);font-style:normal}.pp b{display:block;font-size:10.5px;line-height:13px;font-weight:500;white-space:nowrap}.pp small{display:block;font-size:9px;line-height:11px;color:rgba(255,255,255,.6);white-space:nowrap}.pp.look{border-color:#fff;background:rgba(255,255,255,.14);box-shadow:0 0 0 3px rgba(255,255,255,.18)}.tg{position:absolute;left:50%;top:44px;translate:-50% 0;padding:1px 7px;border-radius:999px;font-size:9.5px;line-height:14px;font-weight:600;white-space:nowrap;opacity:0;scale:.8;transition:opacity 300ms var(--ease),scale 350ms var(--ease)}.pp-tom .tg{top:-19px}.pp.tag .tg{opacity:1;scale:1}.t-ok{background:var(--ac);color:#000}.t-bad{background:#ff8f87;color:#3d0804}.t-gap{background:#ffd27a;color:#3d2a04}.t-mu{background:rgba(255,255,255,.18);color:#fff}.pp-ben.tag{border-color:var(--ac)}.pp-tom.tag{border-style:dashed;border-color:#ffd27a}.bS{padding:14px 16px;display:flex;flex-direction:column;gap:9px}.sh{font-size:17px;line-height:22px;color:#181818}.sts{display:flex;flex-direction:column;gap:7px}.st{display:flex;align-items:center;gap:8px;opacity:.35;transition:opacity 350ms var(--ease)}.st.on{opacity:1}.ck{flex:none;width:18px;height:18px;border-radius:50%;border:1.5px solid #d6d4d1;display:grid;place-items:center;font-size:10px;line-height:1;font-weight:600;color:var(--ts)}.si{flex:none;color:var(--ts)}.si .ic{width:14px;height:14px}.st p{font-size:12.5px;line-height:16px;color:#181818;white-space:nowrap}.ab{align-self:flex-start;display:inline-grid;align-items:center;height:32px;padding:0 14px;border-radius:8px;background:var(--ac);color:#000;font-size:12.5px;line-height:16px;font-weight:500;white-space:nowrap;opacity:0;translate:0 6px;transition:opacity 350ms var(--ease),translate 400ms var(--ease),background-color 300ms var(--ease),color 300ms var(--ease),scale 150ms var(--ease)}.ab>span{grid-area:1/1;display:inline-flex;align-items:center;gap:7px;transition:opacity 250ms var(--ease),translate 300ms var(--ease)}.ab .ic{width:14px;height:14px}.ab .bd{opacity:0;translate:0 7px}.bS.fin .ab{opacity:1;translate:none}.bS.press .ab{scale:.95}.bS.done .ab{background:#1f7a3a;color:#fff}.bS.done .ab .bl{opacity:0;translate:0 -7px}.bS.done .ab .bd{opacity:1;translate:none}.L-m .et{font-size:17px}.L-m .el{font-size:12px}.L-m .st p{font-size:11.5px;white-space:normal}.L-m .sh{font-size:16px;line-height:20px}.L-m .ab{font-size:12px;height:30px;padding:0 12px}.L-c .hd,.L-c .nh,.L-c .e2,.L-c .si{display:none}.L-c .bE{padding:9px 12px;gap:3px;display:grid;grid-template-columns:1fr auto;align-items:center}.L-c .eh{grid-column:2;grid-row:1}.L-c .eh em{display:none}.L-c .et{grid-column:1;grid-row:1;font-size:16px}.L-c .el{grid-column:1/3;font-size:11.5px}.L-c .node{padding:8px 12px;gap:4px}.L-c .bS{padding:10px 14px;gap:6px}.L-c .sh{font-size:15px;line-height:19px}.L-c .sts{gap:4px}.L-c .st p{font-size:11.5px}.L-c .ab{font-size:11.5px;height:26px;padding:0 11px}.L-w .bE{left:100px;top:142px;width:300px;height:150px}.L-w .bN{left:500px;top:92px;width:360px;height:250px}.L-w .bS{left:960px;top:122px;width:300px;height:190px}.L-w .h1{left:250px;top:52px}.L-w .h2{left:680px;top:52px}.L-w .h3{left:1110px;top:52px}.L-w .wr-w{display:block}.L-w .chart{scale:1}.L-m .bE{left:14px;top:151px;width:232px;height:160px}.L-m .bN{left:262px;top:106px;width:296px;height:250px}.L-m .bS{left:574px;top:113px;width:232px;height:236px}.L-m .h1{left:130px;top:58px}.L-m .h2{left:410px;top:58px}.L-m .h3{left:690px;top:58px}.L-m .wr-m{display:block}.L-m .chart{scale:0.8}.L-c .bE{left:14px;top:10px;width:392px;height:74px}.L-c .bN{left:14px;top:98px;width:392px;height:164px}.L-c .bS{left:14px;top:276px;width:392px;height:146px}.L-c .wr-c{display:block}.L-c .chart{scale:0.78}</style></head><body><div id="bg" aria-hidden="true"><div class="ph"></div></div><div id="stage"><span class="hd h1" data-a="fade" style="--d:100">Event</span><span class="hd h2" data-a="fade" style="--d:100">Who can move it</span><span class="hd h3" data-a="fade" style="--d:100">Next move</span><div class="wr wr-w"><svg viewBox="0 0 1360 420" width="1360" height="420" aria-hidden="true"><path class="w l1" pathLength="1" d="M400 217 L500 217"/><path class="w l2" pathLength="1" d="M860 217 L960 217"/></svg><i class="fd f-l1" style="offset-path:path('M400 217 L500 217')"></i><i class="fd f-l2" style="offset-path:path('M860 217 L960 217')"></i></div><div class="wr wr-m"><svg viewBox="0 0 820 470" width="820" height="470" aria-hidden="true"><path class="w l1" pathLength="1" d="M246 231 L262 231"/><path class="w l2" pathLength="1" d="M558 231 L574 231"/></svg><i class="fd f-l1" style="offset-path:path('M246 231 L262 231')"></i><i class="fd f-l2" style="offset-path:path('M558 231 L574 231')"></i></div><div class="wr wr-c"><svg viewBox="0 0 420 430" width="420" height="430" aria-hidden="true"><path class="w l1" pathLength="1" d="M210 84 L210 98"/><path class="w l2" pathLength="1" d="M210 262 L210 276"/></svg><i class="fd f-l1" style="offset-path:path('M210 84 L210 98')"></i><i class="fd f-l2" style="offset-path:path('M210 262 L210 276')"></i></div><div class="card bE" role="img" aria-label="The deal with Meridian Group, 240 thousand euros, has had no reply for 9 days and is at risk. Cobl reads the org chart: Bob in procurement blocks on price, Tom the CFO decides but nobody has met him, Ben has Tom's ear. The next move: ask Ben to introduce you to Tom, lead with the cost plan, propose a 30-minute ROI review. The plan is assigned to the agent."><div class="eh"><span class="risk"><i></i>Deal at risk</span><em>Today</em></div><p class="et serif">Meridian Group · €240k</p><p class="el"><svg class="ic" viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="9.5"/><path d="M12 7v5l3 2"/></svg>No reply for <b><span class="dd">9</span> days</b></p><p class="el e2"><svg class="ic" viewBox="0 0 24 24" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><path d="M14 2v4a2 2 0 0 0 2 2h4M16 13H8M16 17H8M10 9H8"/></svg>Proposal sent on 3 Oct</p></div><div class="bN node" data-a="pop" style="--d:150;--t:600;--sc:.94"><div class="nh"><svg class="cobl-mark" aria-hidden="true" viewBox="3 3 31 32" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_c1)"><mask id="mask0_c1" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="3" y="3" width="31" height="32"><path d="M18.7946 3.89411C27.149 3.89411 33.9214 10.6667 33.9215 19.0211C33.9215 27.3756 27.1491 34.148 18.7946 34.148C10.4401 34.1479 3.6676 27.3755 3.6676 19.0211C3.66772 10.6667 10.4402 3.89423 18.7946 3.89411ZM24.0895 18.5455C21.9817 18.5455 20.2733 20.2542 20.2731 22.3619C20.2731 24.4698 21.9816 26.1793 24.0895 26.1793C26.1973 26.1792 27.9059 24.4698 27.9059 22.3619C27.9056 20.2542 26.1972 18.5455 24.0895 18.5455Z" fill="#D7D6D5"/></mask><g mask="url(#mask0_c1)"><path d="M23.5704 1.17863L25.8687 43.3989" stroke="#0C0C0C" stroke-width="0.902126"/><path d="M38.3215 43.1413L11.1179 1.43636" stroke="#0C0C0C" stroke-width="0.902126"/><path d="M3.86743 35.8913L45.5724 8.6877" stroke="#0C0C0C" stroke-width="0.902126"/><path d="M23.8672 22.5342L20.4264 35.9259" stroke="#2D69FF" stroke-width="5.75973"/><path d="M22.6978 1.05368L23.9048 23.227" stroke="#2D69FF" stroke-width="3.6779"/><path d="M27.2203 22.2772L2.96823 23.5974" stroke="#F79797" stroke-width="6.93943"/><path d="M25.6162 23.2476L3.13122 11.8482" stroke="#FF3131" stroke-width="6.45367"/><path d="M23.3252 25.3431L32.4365 1.2181" stroke="#5934FF" stroke-width="2.98396"/><path d="M37.6289 43.1794L10.4253 1.47442" stroke="#4AD35B" stroke-width="5.06578"/><path d="M3.17432 35.929L44.8793 8.72543" stroke="#FFCB31" stroke-width="6.24549"/></g></g><defs><clipPath id="clip0_c1"><rect width="29.1456" height="24.982" fill="white" transform="translate(3.73132 3.50902)"/></clipPath></defs></svg><p>Reading the account map</p></div><div class="cw"><div class="chart"><svg class="cl" viewBox="0 0 330 146" aria-hidden="true"><path d="M165 40 V60 Q165 64 161 64 H59 Q55 64 55 68 V84"/><path d="M165 40 V84"/><path d="M165 40 V60 Q165 64 169 64 H271 Q275 64 275 68 V84"/><path class="way" pathLength="1" d="M55 84 C55 50 95 20 113 20"/></svg><div class="pp pp-tom" style="left:111px;top:0px"><i>TR</i><div><b>Tom Reyes</b><small>CFO</small></div><span class="tg t-gap">Decides · never met</span></div><div class="pp pp-ben" style="left:1px;top:84px"><i>BH</i><div><b>Ben Hart</b><small>Head of Ops</small></div><span class="tg t-ok">Has Tom's ear</span></div><div class="pp pp-sar" style="left:111px;top:84px"><i>SK</i><div><b>Sarah Klein</b><small>VP Operations</small></div><span class="tg t-mu">New in role</span></div><div class="pp pp-bob" style="left:221px;top:84px"><i>BL</i><div><b>Bob Lindqvist</b><small>Procurement</small></div><span class="tg t-bad">Blocks on price</span></div></div></div></div><div class="card bS"><p class="sh serif">Get a meeting with Tom this week</p><div class="sts"><div class="st st1"><span class="ck">1</span><span class="si"><svg class="ic" viewBox="0 0 24 24" aria-hidden="true"><circle cx="9" cy="8" r="4"/><path d="M2 21c.7-3.4 3.5-5.5 7-5.5s6.3 2.1 7 5.5M19 8v6M22 11h-6"/></svg></span><p>Ask Ben to introduce you to Tom</p></div><div class="st st2"><span class="ck">2</span><span class="si"><svg class="ic" viewBox="0 0 24 24" aria-hidden="true"><path d="M22 7 13.5 15.5 8.5 10.5 2 17"/><path d="M16 7h6v6"/></svg></span><p>Lead with the €40M cost plan</p></div><div class="st st3"><span class="ck">3</span><span class="si"><svg class="ic" viewBox="0 0 24 24" aria-hidden="true"><rect x="3" y="4" width="18" height="18" rx="2"/><path d="M16 2v4M8 2v4M3 10h18"/></svg></span><p>Propose a 30-min ROI review</p></div></div><span class="ab"><span class="bl"><svg class="ic" viewBox="0 0 24 24" aria-hidden="true"><path d="M12 3l1.9 5.6L19.5 10l-5.6 1.9L12 17.5l-1.9-5.6L4.5 10l5.6-1.4Z"/></svg>Assign to the agent</span><span class="bd"><svg class="ic" viewBox="0 0 24 24" aria-hidden="true"><path d="M20 6 9 17l-5-5"/></svg>Agent assigned</span></span></div><div id="cur" aria-hidden="true"><svg viewBox="0 0 24 34"><path d="M2 2 L2 27 L8.2 21.2 L12.4 31 L16.6 29.2 L12.5 19.6 L21 19.6 Z" fill="#000" stroke="#fff" stroke-width="1.8" stroke-linejoin="round"/></svg></div></div><script>
(function(){
var st=document.getElementById('stage'),bg=document.getElementById('bg'),root=document.body;
var still=matchMedia('(prefers-reduced-motion: reduce)').matches;
var LAY=[["w", 1000, 2.6, 1360, 420], ["m", 560, 0, 820, 470], ["c", 0, 0, 420, 430]],TL=[[300, ".bE", "in"], [1000, ".l1", "dr"], [1100, ".f-l1", "go"], [1700, ".pp-bob", "look"], [2000, ".pp-bob", "tag"], [2500, ".pp-bob", "-look"], [2600, ".pp-tom", "look"], [2900, ".pp-tom", "tag"], [3400, ".pp-tom", "-look"], [3500, ".pp-sar", "look"], [3700, ".pp-sar", "tag"], [4000, ".pp-sar", "-look"], [4100, ".pp-ben", "look"], [4400, ".pp-ben", "tag"], [4900, ".pp-ben", "-look"], [4800, ".node", "found"], [5600, ".l2", "dr"], [5700, ".f-l2", "go"], [6100, ".bS", "in"], [6600, ".st1", "on"], [7000, ".st2", "on"], [7400, ".st3", "on"], [7900, ".bS", "fin"], [8000, "@from", "1300,400"], [8150, "@to", ".ab"], [9050, "@click", ""], [9050, ".bS", "press"], [9220, ".bS", "-press done"], [9800, "@hide", ""]],BG=[1360, 480, 0.5, 0.6],END=10000,HOLD=3500,k=1,lay=LAY[0];
function fit(){
var w=innerWidth,h=innerHeight;
lay=LAY.filter(function(l){return w>=l[1]&&w/h>=l[2];})[0]||LAY[LAY.length-1];
LAY.forEach(function(l){root.classList.toggle('L-'+l[0],l===lay);});
st.style.width=lay[3]+'px';st.style.height=lay[4]+'px';
k=Math.min(w/lay[3],h/lay[4]);if(lay[5])k=Math.min(k,lay[5]);
st.style.transform='translate(-50%,-50%) scale('+k+')';
if(bg&&BG){var kb=Math.max(w/BG[0],h/BG[1]);
bg.style.width=BG[0]+'px';bg.style.height=BG[1]+'px';
bg.style.transform='translate('+(w-BG[0]*kb)*BG[2]+'px,'+(h-BG[1]*kb)*BG[3]+'px) scale('+kb+')';}
if(window.onfit)window.onfit(k,lay);
}
fit();addEventListener('resize',fit);
var timers=[];function later(f,t){timers.push(setTimeout(f,t));}
var cur=document.getElementById('cur');
function local(el){var r=el.getBoundingClientRect(),s=st.getBoundingClientRect();
return [(r.left-s.left+r.width*.5)/k,(r.top-s.top+r.height*.55)/k];}
function act(e){
var sel=e[1],c=e[2];
if(sel==='@to'){var t=st.querySelector(c);if(!t||!cur)return;var p=local(t);cur.classList.add('on');cur.style.transform='translate('+(p[0]-3)+'px,'+(p[1]-3)+'px)';return;}
if(sel==='@from'){if(!cur)return;var q=c.split(',');cur.style.transition='none';cur.style.transform='translate('+q[0]+'px,'+q[1]+'px)';void cur.offsetWidth;cur.style.transition='';return;}
if(sel==='@click'){if(!cur)return;cur.classList.add('down');later(function(){cur.classList.remove('down');},170);return;}
if(sel==='@hide'){if(cur)cur.classList.remove('on');return;}
[].forEach.call(sel==='#stage'?[st]:st.querySelectorAll(sel),function(el){c.split(' ').forEach(function(x){
if(x[0]==='-')el.classList.remove(x.slice(1));else el.classList.add(x);});});
}
function typeIn(el){
var html=el.innerHTML;if(still)return;var chars=[];
(function walk(node){[].slice.call(node.childNodes).forEach(function(n){
if(n.nodeType===3){var f=document.createDocumentFragment();
Array.from(n.textContent).forEach(function(ch){
if(/\s/.test(ch)){f.appendChild(document.createTextNode(ch));if(chars.length)chars[chars.length-1].sp=true;return;}
var s=document.createElement('span');s.className='type-ch';s.textContent=ch;f.appendChild(s);chars.push({el:s});});
n.parentNode.replaceChild(f,n);}else if(n.nodeType===1&&n.tagName!=='BR')walk(n);});})(el);
var t=+(el.dataset.at||0),caret=null;
chars.forEach(function(c,i){later(function(){c.el.classList.add('is-typed');if(caret)caret.classList.remove('is-caret','is-typing');
caret=c.el;caret.classList.add('is-caret');caret.classList.toggle('is-typing',i<chars.length-1);},t);
t+=36+Math.random()*38+(c.sp?50:0);});
later(function(){el.innerHTML=html;},t+1300);
}
function count(el){
var to=+el.dataset.to,at=+(el.dataset.at||0),dur=+(el.dataset.dur||1200);
if(still){el.textContent=to;return;}
el.textContent='0';later(function(){var t0=performance.now();
(function step(now){var p=Math.min(1,(now-t0)/dur);p=1-Math.pow(1-p,3);el.textContent=Math.round(to*p);if(p<1)requestAnimationFrame(step);})(t0);},at);
}
var snap=null,vis=false,waiting=false;
function grab(){snap=[st].concat([].slice.call(st.querySelectorAll('*'))).map(function(el){return [el,el.getAttribute('class'),el.getAttribute('style')];});}
function play(){
if(!snap)grab();
root.classList.add('play');
if(still){TL.forEach(function(e){if(e[1][0]!=='@')act(e);});return;}
[].forEach.call(document.querySelectorAll('[data-type]'),typeIn);
[].forEach.call(document.querySelectorAll('[data-count]'),count);
TL.forEach(function(e){later(function(){act(e);},e[0]);});
if(END)later(reset,END+HOLD);
if(window.onplay)window.onplay();
}
function reset(){
if(!vis){waiting=true;return;}
root.classList.add('rs');
later(function(){
timers.forEach(clearTimeout);timers=[];
root.classList.add('nt');root.classList.remove('play');
snap.forEach(function(r){var el=r[0];
if(r[1]===null)el.removeAttribute('class');else el.setAttribute('class',r[1]);
if(r[2]===null)el.removeAttribute('style');else el.setAttribute('style',r[2]);});
fit();if(window.onreset)window.onreset();
void st.offsetWidth;root.classList.remove('nt');
requestAnimationFrame(function(){root.classList.remove('rs');play();});
},450);
}
var started=false;function start(){if(!started){started=true;play();}else if(waiting){waiting=false;reset();}}
if('IntersectionObserver' in window){new IntersectionObserver(function(es){es.forEach(function(e){vis=e.isIntersecting;if(vis)start();});},{threshold:.3}).observe(document.body);}else{vis=true;start();}
})();
</script></body></html>