.capabilities-section{padding:0 0 64px;background:#fff;scroll-margin-top:24px}
.capabilities-card{position:relative;aspect-ratio:1200/660;isolation:isolate;overflow:hidden;border:1px solid #ded2e8;border-radius:22px;background:linear-gradient(115deg,#fcfafb 7%,#f6f0fa 48%,#ebdef5 100%)}
.capabilities-card::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 85% 60%,#e2cefa70,transparent 65%);pointer-events:none;transition:opacity 900ms}
.capabilities-card[data-capability="software"]::before{opacity:.3}
.capabilities-content{position:relative;z-index:2;padding:35px;width:44%}
.capability-tabs{position:relative;display:flex;width:max-content;max-width:100%;padding:4px;gap:3px;border-radius:10px;background:#e9ddf2;margin-bottom:26px}
.capability-tabs button{display:flex;align-items:center;justify-content:center;gap:9px;padding:11px 15px;border:0;border-radius:7px;background:transparent;color:#8f7a9e;font-family:inherit;font-size:12px;font-weight:500;line-height:1.15;letter-spacing:.015em;white-space:nowrap;cursor:pointer;transition:color .22s,background .22s,box-shadow .22s}
.capability-tabs button[aria-selected="true"]{background:#fff;color:#473252;box-shadow:0 1px 5px #43205a0c}
.capability-tabs button:focus-visible,.capability-next:focus-visible{outline:2px solid #823cc0;outline-offset:3px}
.capability-tabs svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;fill:none}
.cap-copy h2{font-size:clamp(31px,3.1vw,44px);line-height:1.07;letter-spacing:-.045em;font-weight:600;color:#302438;margin:0 0 17px}
.cap-copy p{max-width:355px;color:#82718d;font-size:16px;line-height:1.6;margin:0}
.cap-copy[hidden]{display:none}
.cap-mobile-list{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;margin:0}
.capabilities-art{position:absolute;inset:0;z-index:1;pointer-events:none}
.capability-canvas{display:block;width:100%;height:100%;overflow:visible}
.cap-scene{opacity:0;transform:translate(70px,680px);transform-origin:970px 350px}
.cap-scene.is-active{opacity:1;transform:translate(0,0)}
.cap-callout{stroke:#b5a1c5;stroke-width:1}
.cap-callout text{stroke:none;fill:#856c97;font:400 14px/1.4 Inter,sans-serif}
.cap-callout .cap-callout-index{font-size:7px;fill:#a089b0}
.cap-leader{stroke-dasharray:1;stroke-dashoffset:0;fill:none}
.cap-anchor{fill:#b894d0;stroke:#f8f3fc;stroke-width:1}
.cap-app-name{font:500 12px Inter,sans-serif;fill:#9477aa;stroke:none}
.capability-next{position:absolute;z-index:3;bottom:23px;right:23px;width:40px;height:40px;display:grid;place-items:center;border:1px solid #dbc9ea;border-radius:50%;background:#fff9;color:#74528c;cursor:pointer;transition:background .2s,transform .2s}
.capability-next:hover{background:#fff;transform:translateX(2px)}
.capability-next svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;fill:none}
@media(max-width:1100px) and (min-width:851px){.capabilities-content{padding:26px}.capability-tabs{margin-bottom:20px}.capability-tabs button{padding:10px;font-size:11px}.cap-copy p{font-size:14px;max-width:305px}.cap-copy h2{font-size:34px}.cap-callout text{font-size:16px}}
@media(max-width:850px){
 .capabilities-section{padding-bottom:44px}
 .capabilities-card{aspect-ratio:auto}
 .capabilities-content{width:100%;padding:28px 28px 0}
 .cap-copy h2{font-size:38px}
 .cap-copy p{max-width:450px;font-size:15px}
 .capability-tabs{margin-bottom:24px}
 .capabilities-art{position:relative;height:auto;aspect-ratio:600/660;margin-top:-20px;overflow:hidden}
 .capability-canvas{width:200%;max-width:none;height:100%;margin-left:-108.333%}
 .cap-callout{display:none}
 .cap-mobile-list{position:static;display:flex;flex-wrap:wrap;gap:8px 17px;width:auto;height:auto;overflow:visible;clip-path:none;list-style:none;padding:0;margin:20px 0 0;color:#9880a9;font-size:11px;line-height:1.4}
 .cap-mobile-list li::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:#c3a6d8;margin:0 6px 2px 0}
}
@media(max-width:500px){
 .capabilities-card{border-radius:17px}
 .capabilities-content{padding:24px 20px 0}
 .capability-tabs{width:100%;gap:2px;margin-bottom:23px}
 .capability-tabs button{flex:1;padding:10px 7px;font-size:11px;gap:6px}
 .capability-tabs svg{width:14px;height:14px}
 .cap-copy h2{font-size:34px}
 .cap-copy p{font-size:14px;line-height:1.6}
 .cap-mobile-list{gap:7px 12px;font-size:11px;margin-top:17px}
 .capabilities-art{margin-top:0}
 .capability-next{width:34px;height:34px;bottom:17px;right:17px}
}
@media(prefers-reduced-motion:reduce){.capabilities-card *,.capabilities-card::before{transition:none!important}}
@media(max-width:850px){.cap-mobile-list{font-size:14px}}
