.module.capability-card{border-top:1px solid #a9c1b5;padding-top:24px;transition:border-color .25s}
.capability-visual{width:128px;height:96px;margin-bottom:23px;pointer-events:none}
.capability-symbol{display:block;width:100%;height:100%;overflow:visible}
.cap-wash{fill:#e2ece5;opacity:.85;transform-origin:64px 48px;transition:fill .3s,transform .5s}
.cap-lines{fill:none;stroke:#0f5c66;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cap-lines rect,.cap-lines circle{fill:#f7faf6}
.cap-lines .cap-hub{fill:#d0e2d5}
.cap-lines .cap-boundary{stroke:#9bb6a8;stroke-dasharray:.06 .09}
.cap-sweep{stroke:#78a390;opacity:.35}
.cap-link{stroke:#91b1a2}
.capability-card h3{min-height:2.32em;margin-bottom:20px}
.capability-card.is-revealed .capability-symbol{animation:cap-enter .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--cap-delay,0ms)}
.capability-card:hover{border-color:#0f5c66}
.capability-card:hover .cap-wash{fill:#d2e5d8;transform:rotate(4deg)}
.capability-card:hover .cap-lift{animation:cap-lift 1.1s ease both}
.capability-card:hover .cap-focus{animation:cap-focus 1.2s ease both;transform-origin:64px 48px}
.capability-card:hover .cap-trace,.capability-card:hover .cap-check,.capability-card:hover .cap-link{animation:cap-draw 1.15s ease both;stroke-dasharray:1}
.capability-card:hover .cap-check{animation-delay:.18s}
.capability-card:hover .cap-sweep{animation:cap-sweep 1.2s ease both}
.capability-card:hover .cap-reveal{animation:cap-assemble 1.1s ease both}
.capability-card:hover .cap-exchange{animation:cap-exchange 1.15s ease both;transform-origin:64px 48px}
.capability-card:hover .cap-rank{animation:cap-rank 1.2s ease both;stroke-dasharray:1}
.capability-card:hover .cap-line-a,.capability-card:hover .cap-line-b{animation:cap-draw 1.2s ease both;stroke-dasharray:1}
.capability-card:hover .cap-line-b{animation-delay:.12s}
.capability-card:hover .cap-node-a,.capability-card:hover .cap-node-b,.capability-card:hover .cap-node-c,.capability-card:hover .cap-node-d{animation:cap-node 1.2s ease both}
.capability-card:hover .cap-node-b{animation-delay:.1s}.capability-card:hover .cap-node-c{animation-delay:.2s}.capability-card:hover .cap-node-d{animation-delay:.3s}
@keyframes cap-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes cap-lift{0%,100%{transform:translateY(0)}45%{transform:translateY(-4px)}}
@keyframes cap-focus{0%,100%{transform:scale(1)}40%{transform:scale(.94)}}
@keyframes cap-draw{0%{stroke-dashoffset:1;opacity:.25}100%{stroke-dashoffset:0;opacity:1}}
@keyframes cap-sweep{0%{transform:translateY(-12px);opacity:0}45%{opacity:.85}100%{transform:translateY(12px);opacity:0}}
@keyframes cap-assemble{0%{opacity:.3;transform:translate(5px,-3px)}100%{opacity:1;transform:translate(0,0)}}
@keyframes cap-exchange{0%,100%{transform:translateX(0)}35%{transform:translateX(3px)}70%{transform:translateX(-3px)}}
@keyframes cap-rank{0%{stroke-dashoffset:1}70%,100%{stroke-dashoffset:0}}
@keyframes cap-node{0%,100%{fill:#f7faf6}45%{fill:#a9cbb7}}
@media(max-width:700px){.capability-visual{width:112px;height:84px;margin-bottom:20px}.capability-card h3{min-height:0}.module.capability-card{padding-top:24px}}
@media(prefers-reduced-motion:reduce){.capability-card,.capability-card *{animation:none!important;transition:none!important}.capability-symbol{opacity:1!important;transform:none!important}.capability-card:hover .cap-wash{transform:none}.capability-card:hover .cap-check,.capability-card:hover .cap-trace,.capability-card:hover .cap-link,.capability-card:hover .cap-line-a,.capability-card:hover .cap-line-b,.capability-card:hover .cap-rank{stroke-dasharray:none;stroke-dashoffset:0}}
