
body{--acc:#9FE3A3}
/* ---------- hero: off the map → on the map ---------- */
.dhero{color:#fff;padding-bottom:40px}
.dhero .bg-start{background:radial-gradient(55% 60% at 50% 70%,rgba(46,122,94,.5),rgba(10,53,43,0) 70%),linear-gradient(180deg,#0F4537,#07241F 60%,#061D19)}
.dhero .bg-done{background:radial-gradient(circle,rgba(31,53,57,.11) 1.1px,transparent 1.4px) 0 0/22px 22px,linear-gradient(180deg,#F4F4ED,#EDF2EC)}
.dhero[data-state=done]{color:var(--ink)}
.dhero-head{text-align:center}
.dhero .phero-k{color:var(--acc)}
.dhero[data-state=done] .phero-k{color:var(--forest-600)}
.dhero .phero-line{justify-content:center}
.dhint{margin:14px 0 0;font-family:var(--serif);font-style:italic;font-size:calc(26px * var(--hs-m,1));color:var(--acc);transition:color .5s;font-weight:var(--hw-t,400)}
.dhero[data-state=done] .dhint{color:var(--forest-600)}
.dmap{position:relative;width:min(1312px,calc(100% - 2*var(--gutter)));height:390px;margin:26px auto 0}
.dmap svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.dmap .jl{fill:none;stroke:rgba(31,53,57,.16);stroke-width:30;stroke-linecap:round;opacity:0;transition:opacity .8s var(--ease) .6s}
.dmap .jl2{fill:none;stroke:var(--sage);stroke-width:2.5;stroke-linecap:round;opacity:0;transition:opacity .8s var(--ease) .7s}
.dmap .br{fill:none;stroke:var(--rose);stroke-width:2.2;stroke-dasharray:6 6;stroke-linecap:round;opacity:0;transition:opacity .6s var(--ease) 1.1s}
.dhero[data-state=done] .dmap .jl,.dhero[data-state=done] .dmap .jl2,.dhero[data-state=done] .dmap .br{opacity:1}
.pt{position:absolute;left:0;top:0;width:var(--ps,14px);height:var(--ps,14px);margin:calc(var(--ps,14px) / -2) 0 0 calc(var(--ps,14px) / -2);border-radius:50%;background:rgba(255,255,255,.42);transform:translate(var(--sx),var(--sy));transition:transform 1.1s var(--ease-out) var(--dl),background-color .6s var(--ease) var(--dl),box-shadow .6s var(--ease) var(--dl);animation:drift var(--fd) ease-in-out infinite alternate;animation-delay:var(--dl)}
@keyframes drift{to{translate:7px -9px}}
.dhero[data-state=done] .pt{transform:translate(var(--mx),var(--my));background:var(--forest-700);animation:none}
.dhero[data-state=done] .pt.pk{background:#fff;box-shadow:inset 0 0 0 3px var(--rose)}
.dcol,.pocket{position:absolute;transform:translateX(-50%);opacity:0;transition:opacity .6s var(--ease) .9s}
.dhero[data-state=done] .dcol,.dhero[data-state=done] .pocket{opacity:1}
.dcol{top:0;font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--forest-600);white-space:nowrap}
.pocket{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
.pocket .mono{color:var(--rose);font-size:10.5px;white-space:nowrap}
.pocket .tag{font-size:11.5px;box-shadow:0 6px 14px rgba(8,30,26,.12)}
.dlegend{display:none}
.dhero-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:26px}
.dhero-foot .swapcopy p{margin:0 0 20px;font-size:19px;line-height:1.45;max-width:30em}
.dhero-foot .s-start{color:rgba(255,255,255,.78)}
.dhero-foot .s-done{color:var(--ink-2)}
.dhero .btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}
.dhero[data-state=done] .btn-ghost{border-color:rgba(31,53,57,.3);color:var(--ink)}
.dhero[data-state=done] .hero-ctas .btn-lime{background:var(--ink);color:var(--cream)}
.dhero-cap{display:grid}
.dhero-cap>*{grid-area:1/1;transition:opacity .5s var(--ease)}
.dhero-cap .s-done{opacity:0}
.dhero[data-state=done] .dhero-cap .s-start{opacity:0}
.dhero[data-state=done] .dhero-cap .s-done{opacity:1;transition-delay:1.4s}

/* ---------- answers for your group ---------- */
.answers{padding:140px 0}
.ans-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:40px;margin-top:56px;align-items:start}
.ans-qs{display:flex;flex-direction:column;gap:10px}
.ans-q{display:flex;gap:16px;align-items:flex-start;text-align:left;padding:22px 22px;border-radius:22px;border:1px solid var(--line);background:var(--cream-2);transition:background-color .25s var(--ease),border-color .25s var(--ease),box-shadow .3s var(--ease)}
.ans-q .qi{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#fff;color:var(--forest-700);flex-shrink:0;transition:background-color .25s}
.ans-q b{display:block;font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(30px * var(--hs-m,1));line-height:1.05;letter-spacing:-.01em}
.ans-q small{display:block;margin-top:6px;font-size:15px;color:var(--ink-2)}
.ans-q.is-active{background:#fff;border-color:transparent;box-shadow:var(--shadow-sm)}
.ans-q.is-active .qi{background:var(--acc);color:var(--forest-900)}
.ans-view{position:relative;border-radius:30px;background:linear-gradient(180deg,#0F4537,#07241F);padding:30px;min-height:580px;color:#fff;overflow:hidden}
.ans-view::before{content:"";position:absolute;right:-160px;top:-180px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(159,227,163,.38),rgba(159,227,163,0) 65%)}
.rv{position:absolute;inset:30px;opacity:0;transform:translateY(12px);transition:opacity .45s var(--ease),transform .55s var(--ease);pointer-events:none;display:flex;flex-direction:column}
.rv.is-active{opacity:1;transform:none;pointer-events:auto}
.rv .mono{color:rgba(255,255,255,.55)}
.rep{margin-top:16px;flex:1;background:var(--cream);color:var(--ink);border-radius:22px;padding:24px;box-shadow:0 30px 60px rgba(0,0,0,.3)}
.fun{display:grid;gap:12px}
.fun-row{display:grid;grid-template-columns:116px 1fr;align-items:center;gap:14px;font-weight:500;font-size:14px}
.fun-row i{display:block;height:40px;border-radius:10px;background:var(--sage);transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease-out)}
.rv.play .fun-row i{transform:scaleX(var(--w))}
.rv.play .fun-row:nth-child(3) i{transition-delay:.2s}.rv.play .fun-row:nth-child(5) i{transition-delay:.4s}
.fun-gap{margin-left:130px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:#8E3442}
.fun-gap::before{content:"";width:16px;height:2px;border-top:2px dashed var(--rose)}
.sites{width:100%;border-collapse:collapse;font-size:14px}
.sites th{text-align:left;font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);padding:0 0 12px}
.sites td{padding:14px 0;border-top:1px solid var(--line);vertical-align:middle}
.sites td:first-child{font-weight:500}
.mbar{display:block;height:10px;border-radius:5px;background:var(--cream-2);overflow:hidden;width:86%}
.mbar i{display:block;height:100%;width:100%;background:var(--sage);border-radius:5px;transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease-out) .15s}
.rv.play .mbar i{transform:scaleX(var(--w))}
.mbar.warn i{background:var(--amber)}
.flist{display:flex;flex-direction:column}
.frow{display:grid;grid-template-columns:22px 36px 1fr auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.frow:first-of-type{border-top:0}
.frow input{width:17px;height:17px;accent-color:var(--forest-700)}
.frow .nm{font-weight:500;font-size:15px}
.frow .sub{font-size:12px;color:var(--ink-3)}
.send{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.send .mini-btn{background:var(--ink)}
.toast{font-size:13px;font-weight:500;color:var(--forest-700);opacity:0;transform:translateY(4px);transition:opacity .3s,transform .4s var(--ease)}
.toast.show{opacity:1;transform:none}
.ans-view .caption{position:absolute;left:30px;bottom:22px;margin:0}

/* ---------- same cancellation, different next steps ---------- */
.select{padding:140px 0;background:linear-gradient(180deg,#0A352B,#061D19)}
.sel-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.select .h2{color:#fff}
.sel-card{background:var(--cream);color:var(--ink);border-radius:30px;padding:28px;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.sel-who{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.fact{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);font-weight:500;font-size:16px}
.fact .fl{display:flex;align-items:center;gap:12px}
.fact .fl .ic{width:20px;height:20px;color:var(--forest-600)}
.fact .mini{background:#fff;border-color:var(--line)}
.fact .mini::after{background:var(--sage)}
.fact .mini[aria-checked=true]{background:var(--acc);border-color:var(--forest-900)}
.fact .mini[aria-checked=true]::after{background:var(--forest-900)}
.sel-arrow{display:flex;align-items:center;gap:10px;margin:16px 0 12px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--forest-600)}
.sel-arrow::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--sage),transparent)}
.outcome{position:relative;min-height:150px;border-radius:20px;padding:20px 22px;background:var(--oc-bg,#EEF4DF);transition:background-color .4s var(--ease)}
.outcome .oc-t{font-family:var(--serif);font-size:calc(44px * var(--hs-l,1));line-height:1;letter-spacing:-.02em;font-weight:var(--hw-d,400)}
.outcome .oc-d{margin:10px 0 12px;font-size:15px;color:var(--ink-2);max-width:30em}
.outcome .oc-in{transition:opacity .25s var(--ease),transform .35s var(--ease)}
.outcome.swap .oc-in{opacity:0;transform:translateY(6px)}

/* ---------- patient voice ---------- */
.dvoice{padding:140px 0;background:var(--paper)}
.board{margin-top:56px;border-radius:30px;background:#fff;padding:28px 30px 34px;box-shadow:var(--shadow-sm)}
.board-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.board-head b{display:block;font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(30px * var(--hs-m,1));line-height:1}
.board-head span{font-size:13px;color:var(--ink-3)}
.mb-row{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:26px;align-items:end}
.mb-col{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}
.mb-ele{height:150px;width:100%;display:flex;align-items:flex-end;justify-content:center}
.mb-ele img{width:140px;transform:scale(var(--s,.7));transform-origin:bottom center;transition:transform .9s var(--ease-out)}
.mb-col:hover .mb-ele img{animation:sway 1.4s ease-in-out infinite}
.mb-bar{width:100%;height:8px;border-radius:4px;background:var(--cream-2);overflow:hidden;margin-top:6px}
.mb-bar i{display:block;height:100%;background:var(--mc);border-radius:4px;transform:scaleX(var(--s,.7));transform-origin:left;transition:transform .9s var(--ease-out)}
.mb-col b{font-family:var(--serif);font-weight:var(--hw-t,400);font-size:calc(26px * var(--hs-m,1));line-height:1;color:var(--mc);margin-top:6px}
.mb-col span{font-size:13px;color:var(--ink-3)}
.mb-quotes{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}
.mb-quotes .link-arrow{margin-top:16px;font-size:15px}
.mb-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.mb-points h3{font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(30px * var(--hs-m,1));margin:0;line-height:1}
.mb-points p{margin:8px 0 0;color:var(--ink-2);font-size:16px}

/* ---------- attribution ---------- */
.attrib{padding:140px 0}
.tl{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:60px}
.tl-line{position:absolute;left:12.5%;right:12.5%;top:27px;height:3px;border-radius:3px;background:var(--cream-2);overflow:hidden}
.tl-line i{display:block;height:100%;background:var(--lime-deep);transform:scaleX(0);transform-origin:left;transition:transform 2.6s var(--ease)}
.tl.on .tl-line i{transform:scaleX(1)}
.tl-step{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.tl-node{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--line);color:var(--ink-3);transition:background-color .4s var(--ease),border-color .4s var(--ease),color .4s;transition-delay:var(--td)}
.tl.on .tl-node{background:var(--lime);border-color:var(--lime-deep);color:var(--forest-900)}
.tl-step b{font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(28px * var(--hs-m,1));line-height:1}
.tl-rec{font-size:13px;color:var(--ink-3);padding:8px 12px;border-radius:10px;background:var(--cream-2)}
.attr-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:56px;align-items:stretch}
.attr-card{border-radius:24px;padding:26px;border:1px solid var(--line);background:var(--cream-2)}
.attr-card.strong{background:var(--ink);color:#fff;border-color:var(--ink)}
.attr-card h3{font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(32px * var(--hs-m,1));line-height:1;margin:14px 0 0}
.attr-card p{margin:10px 0 0;font-size:16px;color:var(--ink-2)}
.attr-card.strong p{color:rgba(255,255,255,.75)}
.attr-quote{display:flex;align-items:flex-end;font-family:var(--serif);font-style:italic;font-size:calc(30px * var(--hs-m,1));line-height:1.1;letter-spacing:-.01em;color:var(--forest-700);padding:10px 4px;font-weight:var(--hw-d,400)}

/* ---------- the data model: see → act ---------- */
.dmodel{padding:140px 0}
.dm{margin-top:52px}
.dm-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 24px}
.dm-sw{display:inline-flex;align-items:center;gap:12px;padding:8px 16px;border-radius:999px;background:#fff;box-shadow:var(--shadow-sm)}
.dm-l{font-family:var(--serif);font-size:calc(26px * var(--hs-m,1));line-height:1;color:var(--ink-3);transition:color .3s;font-weight:var(--hw-t,400)}
.dm-l--see{color:var(--ink)}
.dm.act .dm-l--see{color:var(--ink-3)}
.dm.act .dm-l--act{color:var(--ink)}
.dm-sw .mini{background:var(--cream-2);border-color:var(--line)}
.dm-sw .mini::after{background:var(--sage)}
.dm-sw .mini[aria-checked=true]{background:var(--acc);border-color:var(--forest-900)}
.dm-sw .mini[aria-checked=true]::after{background:var(--forest-900)}
.dm-say{display:grid;font-size:15px;color:var(--ink-2)}
.dm-say>span{grid-area:1/1;transition:opacity .35s}
.dm-say .s-act,.dm.act .dm-say .s-see{opacity:0}
.dm.act .dm-say .s-act{opacity:1}
.dm-rail{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:26px}
.dm-line{position:absolute;left:8%;right:8%;top:37px;height:2px;background:linear-gradient(90deg,var(--sage),var(--acc))}
.dm-st{position:relative;display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:12px;align-content:start;padding:20px 18px 22px;border-radius:22px;background:#fff;box-shadow:var(--shadow-sm);transition:background-color .5s var(--ease);transition-delay:calc(var(--i) * 60ms)}
.dm-n{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--forest-900);color:var(--acc);font-family:var(--mono);font-size:12px;letter-spacing:.06em}
.dm-st h3{margin:0;font-family:var(--serif);font-weight:var(--hw-t,400);font-size:calc(26px * var(--hs-m,1));line-height:1.02;letter-spacing:-.01em;text-wrap:balance}
.dm-k,.dm-d{display:grid;align-items:start;justify-items:start;margin:0}
.dm-k{margin-top:6px}
.dm-k>*,.dm-d>*{grid-area:1/1;transition:opacity .4s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i) * 70ms)}
.dm-k b{font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(52px * var(--hs-l,1));line-height:calc(.9 * var(--hl,1));letter-spacing:-.02em;color:var(--forest-700)}
.dm-d{font-size:14.5px;line-height:1.4;color:var(--ink-2)}
.dm-act{opacity:0;transform:translateY(10px)}
.dm-prog{padding:6px 10px;border-radius:9px;background:var(--forest-900);color:var(--acc);font-weight:600;font-size:13.5px;line-height:1.25;text-wrap:balance}
.dm-prog .nw{white-space:nowrap}
.dm-prog--voice{background:#DDF1EA;color:var(--forest-900)}
.dm.act .dm-st{background:#F3FAF1}
.dm.act .dm-see{opacity:0;transform:translateY(-10px)}
.dm.act .dm-act{opacity:1;transform:none}
/* ---------- report views modelled on the workspace ---------- */
.rep-h{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px 14px}
.rep-h b{font-family:var(--serif);font-weight:var(--hw-t,400);font-size:calc(26px * var(--hs-m,1));line-height:1}
.rep-h span{font-size:12.5px;color:var(--ink-3)}
.lr{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:start;margin-top:20px}
.waffle{display:grid;grid-template-columns:repeat(10,18px);gap:5px}
.waffle i{width:18px;height:18px;border-radius:4px;background:var(--wc);opacity:0;transform:scale(.4);transition:opacity .3s var(--ease),transform .45s var(--ease-out);transition-delay:calc(var(--k) * 9ms)}
.rv.play .waffle i{opacity:1;transform:none}
.lr-cols{display:flex;flex-direction:column;gap:10px}
.lr-c{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:center;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:#fff}
.lr-k{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:14px}
.lr-k i{width:10px;height:10px;border-radius:50%;background:var(--lc)}
.lr-c b{grid-row:1/3;grid-column:2;font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(40px * var(--hs-l,1));line-height:1}
.lr-c small{font-size:12.5px;color:var(--ink-3)}
.lr-act{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:14px}
.lr-act b{font-weight:600}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.kpis div{padding:10px 12px;border-radius:12px;background:#fff;border:1px solid var(--line)}
.kpis b{display:block;font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(30px * var(--hs-m,1));line-height:1}
.kpis span{display:block;margin-top:4px;font-size:11.5px;line-height:1.25;color:var(--ink-3)}
.ltabs{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 4px}
.ltabs span{padding:6px 11px;border-radius:9px;font-size:12.5px;font-weight:500;color:var(--ink-2)}
.ltabs .on{background:var(--forest-900);color:#fff}
.lrow{display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"av t st" "av nx nx";gap:4px 12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.lrow .av{grid-area:av;width:36px;height:36px;font-size:12px;align-self:start}
.lrow-t{grid-area:t;min-width:0}
.lrow-t b{display:block;font-weight:500;font-size:15px}
.lrow-t small{display:block;font-size:12px;color:var(--ink-3)}
.lst{grid-area:st;padding:4px 9px;border-radius:7px;font-size:12px;font-weight:600}
.lst--eng{background:#EEF4DF;color:#3E5A18}
.lst--new{background:#DDF1EA;color:#1F5A4B}
.lst--bkd{background:var(--amber-soft);color:var(--amber-ink)}
.nx{grid-area:nx;font-size:13.5px;color:var(--ink-2)}
.nx span{margin-right:8px;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.rv .lrow{opacity:0;transform:translateY(8px);transition:opacity .4s var(--ease),transform .5s var(--ease)}
.rv.play .lrow{opacity:1;transform:none}
.rv.play .lrow:nth-child(2){transition-delay:.15s}.rv.play .lrow:nth-child(3){transition-delay:.3s}
/* ---------- activity & attribution panel ---------- */
.aa{margin-top:56px;border-radius:30px;background:#fff;padding:28px 30px 30px;box-shadow:var(--shadow-sm)}
.aa-top{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:14px}
.aa-top .mono{display:block;color:var(--forest-600)}
.aa-top b{display:block;margin-top:6px;font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(34px * var(--hs-m,1));line-height:1}
.aa-filters{display:flex;flex-wrap:wrap;gap:8px}
.aa-filters span{padding:8px 12px;border-radius:10px;border:1px solid var(--line);font-size:13px;color:var(--ink-2)}
.aa-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}
.aa-kpis div{padding:16px 18px;border-radius:16px;border:1px solid var(--line)}
.aa-kpis .hi{background:#EEF6EC;border-color:#D5E8D2}
.aa-kpis span{display:block;font-size:13px;color:var(--ink-2)}
.aa-kpis b{display:block;margin-top:8px;font-family:var(--serif);font-weight:var(--hw-d,400);font-size:calc(44px * var(--hs-l,1));line-height:1}
.aa-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px;margin-top:24px}
.aa-h b{font-family:var(--serif);font-weight:var(--hw-t,400);font-size:calc(24px * var(--hs-m,1));line-height:1.05}
.aa-h small{display:block;margin-top:4px;font-size:13px;color:var(--ink-3)}
.aa-chart svg{display:block;width:100%;height:auto;margin-top:12px;overflow:visible}
.aa-chart .gl{stroke:#E4E8E0;stroke-width:1}
.aa-chart .tx{font-family:var(--sans);font-size:15px;fill:var(--ink-3)}
.aa-chart .ttl{font-size:14px;fill:var(--ink-2)}
.aa-chart .dot{opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:opacity .3s var(--ease),transform .5s var(--ease-out);transition-delay:calc(var(--k) * 45ms)}
.aa.on .aa-chart .dot{opacity:1;transform:none}
.aa-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px;font-size:12.5px;color:var(--ink-2)}
.aa-legend span{display:inline-flex;align-items:center;gap:6px}
.aa-legend i{width:9px;height:9px;border-radius:50%;background:var(--c)}
.aa-bars{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.aa-bars div{display:grid;grid-template-columns:minmax(0,10em) minmax(0,1fr) 2em;align-items:center;gap:12px;font-size:14px}
.aa-bars i{display:block;height:8px;border-radius:4px;background:var(--forest-700);transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease-out) .3s}
.aa-bars--soft i{background:var(--sage)}
.aa.on .aa-bars i{transform:scaleX(var(--w))}
.aa-bars b{text-align:right;font-weight:600}

@media (max-width:1180px){
  .dm-rail{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dm-line{display:none}
  .dm-k b{font-size:calc(44px * var(--hs-l,1))}
}
@media (max-width:960px){
  .pocket .mono{white-space:normal;max-width:130px;line-height:1.35}
  .aa-body{grid-template-columns:1fr}
  .aa-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ans-grid,.sel-grid{grid-template-columns:1fr}
  .mb-row{grid-template-columns:repeat(3,1fr);row-gap:26px}
  .mb-quotes,.attr-cards{grid-template-columns:1fr}
  .mb-points{grid-template-columns:1fr}
  .tl{grid-template-columns:1fr 1fr;row-gap:30px}
  .tl-line{display:none}
}
@media (max-width:720px){
  .dmap{height:350px}
  .pocket{display:none}
  .dlegend{display:flex;flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;font-size:14px;color:var(--ink-2);opacity:0;transition:opacity .5s .9s}
  .dhero[data-state=done] .dlegend{opacity:1}
  .dlegend li{display:flex;align-items:center;gap:8px}
  .dlegend i{width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 3px var(--rose)}
  .dcol{font-size:9.5px;letter-spacing:.08em}
  .dhero-foot{flex-direction:column;align-items:stretch}
  .dhero-cap{display:none}
  .answers,.select,.dvoice,.attrib{padding:96px 0}
  .ans-view{min-height:600px;padding:20px}
  .frow{grid-template-columns:20px 32px minmax(0,1fr);grid-template-areas:"cb av nm" "cb av tg";row-gap:5px;column-gap:10px;padding:10px 0}
  .frow>input{grid-area:cb}
  .frow>.av{grid-area:av;width:32px!important;height:32px!important;font-size:11px!important}
  .frow>span:nth-of-type(2){grid-area:nm;min-width:0}
  .frow>.tag{grid-area:tg;justify-self:start;max-width:100%;white-space:normal;font-size:11px}
  .frow .sub,.frow br{display:none}
  .rv{inset:20px}
  .ltabs{display:none}
  .lrows{margin-top:10px}
  .kpis b{font-size:calc(24px * var(--hs-m,1))}
  .lrow{padding:10px 0}
  .fun-row{grid-template-columns:90px 1fr}
  .fun-gap{margin-left:0}
  .mb-row{grid-template-columns:repeat(2,1fr)}
  .mb-ele{height:120px}
  .tl{grid-template-columns:1fr}
  .outcome .oc-t{font-size:calc(36px * var(--hs-m,1))}
  .dmodel{padding:96px 0}
  .dm-rail{grid-template-columns:minmax(0,1fr);gap:10px}
  .dm-line{display:block;left:33px;right:auto;top:30px;bottom:30px;width:2px;height:auto;background:linear-gradient(180deg,var(--sage),var(--acc))}
  .dm-st{grid-row:auto;grid-template-rows:none;grid-template-columns:36px minmax(0,1fr);column-gap:14px;row-gap:6px;padding:16px 16px 18px;border-radius:18px}
  .dm-n{grid-row:1}
  .dm-st>h3,.dm-k,.dm-d{grid-column:2}
  .dm-st h3{align-self:center;font-size:calc(24px * var(--hs-m,1))}
  .dm-k{margin-top:4px}
  .dm-k b{font-size:calc(40px * var(--hs-l,1))}
  .dm-d{font-size:14px}
  .lr{grid-template-columns:1fr;gap:16px}
  .ans-view{min-height:680px}
  .waffle{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;width:100%;max-width:230px;margin:0 auto}
  .waffle i{width:auto;height:auto;aspect-ratio:1}
  .lr-cols{flex-direction:row;gap:6px}
  .lr-c{flex:1;grid-template-columns:1fr;padding:8px 10px}
  .lr-c b{grid-row:auto;grid-column:auto;font-size:calc(28px * var(--hs-m,1))}
  .lr-c small{display:none}
  .lr-act{flex-direction:column;align-items:flex-start}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lrow{grid-template-columns:32px minmax(0,1fr);grid-template-areas:"av t" "av st" "av nx"}
  .lrow .av{width:32px;height:32px}
  .lst{justify-self:start}
  .aa{padding:20px 16px 22px;border-radius:22px}
  .aa-kpis b{font-size:calc(34px * var(--hs-m,1))}
  .aa-bars div{grid-template-columns:minmax(0,8.5em) minmax(0,1fr) 1.6em;font-size:13px}
}
