/* ============================================================
   CENTERSPREAD CAPABILITIES — V2.8
============================================================ */
.cs-capabilities{
  --cap-purple:#982197;--cap-purple-deep:#43105f;--cap-purple-soft:#f7eef9;
  --cap-orange:#ff7a18;--cap-orange-2:#f15b22;--cap-orange-soft:#fff1e6;
  --cap-ink:#11121a;--cap-muted:#6f737e;--cap-line:#ece7ef;--cap-dark:#0f0d14;
  --cap-max:1220px;--cap-spring:cubic-bezier(.16,1,.3,1);
  color:var(--cap-ink);background:#fff;overflow:hidden;
}
.cs-capabilities *{box-sizing:border-box}
.cs-capabilities a{text-decoration:none}
.cs-capabilities .cap-wrap{width:min(var(--cap-max),calc(100% - 42px));margin-inline:auto}
.cap-gradient-text{background:linear-gradient(90deg,var(--cap-purple),#ae278b 45%,var(--cap-orange));-webkit-background-clip:text;background-clip:text;color:transparent}
.cap-eyebrow{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:linear-gradient(90deg,#f8eafa,#fff2e7);color:var(--cap-purple);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}

.cap-hero{position:relative;padding:72px 0 86px;background:linear-gradient(rgba(151,35,154,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(151,35,154,.025) 1px,transparent 1px),radial-gradient(circle at 88% 14%,rgba(255,122,24,.09),transparent 27%),radial-gradient(circle at 72% 74%,rgba(151,35,154,.06),transparent 31%),#fff;background-size:64px 64px,64px 64px,auto,auto,auto}
.cap-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:74px;align-items:center}
.cap-hero-copy h1{margin:18px 0 17px;max-width:630px;font-size:clamp(58px,6.25vw,88px);line-height:.90;letter-spacing:-.065em;font-weight:900}
.cap-hero-copy p{max-width:580px;margin:0;color:var(--cap-muted);font-size:17px;line-height:1.62}
.cap-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:28px}
.cap-btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:850;transition:transform .3s var(--cap-spring),box-shadow .3s ease}
.cap-btn:hover{transform:translateY(-3px)}.cap-btn span{transition:transform .25s var(--cap-spring)}.cap-btn:hover span{transform:translateX(4px)}
.cap-btn-primary{color:#fff;background:linear-gradient(110deg,var(--cap-purple-deep),var(--cap-purple),var(--cap-orange-2));box-shadow:0 14px 30px rgba(101,21,117,.16)}
.cap-btn-light{color:var(--cap-ink);border-color:#ded5e1;background:#fff}

.cap-hero-visual{min-height:520px}
.cap-visual-shell{position:relative;height:520px;border:1px solid rgba(151,35,154,.08);border-radius:30px;background:rgba(255,255,255,.84);box-shadow:0 30px 75px rgba(49,23,58,.10);backdrop-filter:blur(14px)}
.cap-orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(151,35,154,.09);border-radius:50%;transform:translate(-50%,-50%)}
.cap-orbit-one{width:290px;height:290px}.cap-orbit-two{width:190px;height:190px;border-color:rgba(255,122,24,.10)}
.cap-core{position:absolute;z-index:4;left:50%;top:50%;width:128px;height:128px;transform:translate(-50%,-50%);display:grid;place-content:center;text-align:center;border-radius:30px;color:#fff;background:linear-gradient(145deg,#56116c,#a5238e 55%,#f06436);box-shadow:0 22px 45px rgba(91,21,108,.20);animation:capCorePulse 5.4s ease-in-out infinite}
.cap-core strong{font-size:12px}.cap-core span{margin-top:4px;color:rgba(255,255,255,.64);font-size:7px;letter-spacing:.16em}
@keyframes capCorePulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.035)}}
.cap-mini-card{position:absolute;z-index:5;width:180px;min-height:112px;display:grid;grid-template-columns:26px 1fr;gap:9px;padding:16px;border:1px solid rgba(40,22,47,.08);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 14px 36px rgba(42,22,49,.07);transition:transform .34s var(--cap-spring),box-shadow .34s ease;animation:capMiniFloat 6s ease-in-out infinite}
.cap-mini-card:nth-of-type(even){animation-delay:-1.6s}.cap-mini-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(42,22,49,.11)}
.cap-mini-card i{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:var(--cap-purple-soft);color:var(--cap-purple);font-style:normal;font-size:13px;font-weight:900}
.cap-mini-card:nth-child(even) i{color:var(--cap-orange-2);background:var(--cap-orange-soft)}
.cap-mini-card strong{display:block;font-size:10px;line-height:1.08}.cap-mini-card span{display:block;margin-top:6px;color:#8b8e97;font-size:7.5px;line-height:1.32}
.cap-mini-1{left:38px;top:42px}.cap-mini-2{right:38px;top:46px}.cap-mini-3{left:25px;top:204px}.cap-mini-4{right:25px;top:208px}.cap-mini-5{left:48px;bottom:39px}.cap-mini-6{right:48px;bottom:39px}
@keyframes capMiniFloat{0%,100%{margin-top:0}50%{margin-top:-7px}}

.cap-card-section{padding:24px 0 100px;background:linear-gradient(#fff,#fcfafc)}
.cap-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;overflow:hidden;border:1px solid var(--cap-line);border-radius:22px;background:#fff;box-shadow:0 20px 50px rgba(37,19,45,.055)}
.cap-service-card{position:relative;min-height:390px;padding:28px 24px 32px;border-right:1px solid var(--cap-line);border-bottom:1px solid var(--cap-line);background:radial-gradient(circle at 8% 0%,rgba(151,35,154,.055),transparent 22%),#fff;transition:transform .3s var(--cap-spring),background .3s ease}
.cap-service-card:nth-child(4n){border-right:0}.cap-service-card:nth-child(n+5){border-bottom:0}
.cap-service-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--cap-purple)}
.cap-service-card.cap-orange::after{background:var(--cap-orange)}.cap-service-card.cap-orange{background:radial-gradient(circle at 8% 0%,rgba(255,122,24,.06),transparent 22%),#fff}
.cap-service-card:hover{z-index:2;transform:translateY(-5px);background:#fff;box-shadow:0 18px 36px rgba(39,20,46,.07)}
.cap-service-icon{width:42px;height:42px;display:grid;place-items:center;margin-bottom:22px;border-radius:50%;color:var(--cap-purple);background:var(--cap-purple-soft);font-size:18px;font-weight:900}
.cap-orange .cap-service-icon{color:var(--cap-orange-2);background:var(--cap-orange-soft)}
.cap-service-card h2{margin:0 0 12px;color:var(--cap-ink);font-size:22px;line-height:1.02;letter-spacing:-.045em}
.cap-service-card p{min-height:93px;margin:0 0 17px;color:var(--cap-muted);font-size:12.5px;line-height:1.56}
.cap-service-card ul{margin:0;padding:0;list-style:none}.cap-service-card li{position:relative;margin:8px 0;padding-left:13px;color:#41444e;font-size:11px;line-height:1.35;font-weight:650}
.cap-service-card li::before{content:"";position:absolute;left:0;top:.53em;width:4px;height:4px;border-radius:50%;background:var(--cap-purple)}.cap-orange li::before{background:var(--cap-orange)}

.cap-connect-section{position:relative;padding:104px 0;color:#fff;background:radial-gradient(circle at 8% 20%,rgba(151,35,154,.22),transparent 24%),radial-gradient(circle at 92% 78%,rgba(255,122,24,.16),transparent 26%),linear-gradient(135deg,#0d0b12,#15111a 54%,#100d14)}
.cap-connect-section::before{content:"";position:absolute;inset:0;opacity:.15;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:70px 70px;pointer-events:none}
.cap-connect-section .cap-wrap{position:relative;z-index:2}.cap-eyebrow-dark{color:#e2a5e8;background:rgba(151,35,154,.12);border:1px solid rgba(255,255,255,.08)}
.cap-connect-head{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:end}
.cap-connect-head h2{margin:16px 0 0;max-width:720px;color:#fff;font-size:clamp(46px,5vw,72px);line-height:.94;letter-spacing:-.06em}
.cap-connect-head h2 span{color:transparent;background:linear-gradient(90deg,#d965d0,#ff7a18);-webkit-background-clip:text;background-clip:text}
.cap-connect-head p{max-width:540px;margin:0;color:rgba(255,255,255,.60);font-size:16px;line-height:1.7}
.cap-journey{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr auto 1.15fr;gap:12px;align-items:stretch;margin-top:55px}
.cap-journey>i{display:grid;place-items:center;color:#b34ab4;font-style:normal;font-size:18px}
.cap-journey-node{min-height:135px;padding:19px 18px;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:rgba(255,255,255,.045);backdrop-filter:blur(8px);transition:transform .3s var(--cap-spring),border-color .3s ease}
.cap-journey-node:hover{transform:translateY(-5px);border-color:rgba(218,94,205,.35)}
.cap-journey-node small{display:block;color:#d667cf;font-size:9px;font-weight:900}.cap-journey-node strong{display:block;margin-top:20px;color:#fff;font-size:13px;line-height:1.18}.cap-journey-node span{display:block;margin-top:7px;color:rgba(255,255,255,.45);font-size:9px;line-height:1.35}
.cap-journey-final{border-color:rgba(255,122,24,.24);background:linear-gradient(145deg,rgba(151,35,154,.12),rgba(255,122,24,.08))}
.cap-connect-note{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:25px;padding:18px 22px;border-top:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.56)}
.cap-connect-note strong{color:#fff;font-size:14px}.cap-connect-note span{font-size:12px}

.cap-final-cta{padding:72px 0 86px;background:#fff}
.cap-cta-card{position:relative;overflow:hidden;min-height:205px;display:grid;grid-template-columns:1fr 1.15fr auto;align-items:center;gap:42px;padding:38px 42px;border-radius:26px;color:#fff;background:radial-gradient(circle at 92% 12%,rgba(255,215,155,.32),transparent 24%),linear-gradient(105deg,#43105f,#86188c 42%,#cb315e 70%,#ff6b12);box-shadow:0 30px 65px rgba(86,18,95,.19)}
.cap-cta-card::after{content:"";position:absolute;width:250px;height:250px;right:-80px;bottom:-160px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.035)}
.cap-cta-card>*{position:relative;z-index:2}.cap-cta-kicker{display:block;margin-bottom:12px;color:#ffd7c1;font-size:9px;font-weight:900;letter-spacing:.16em}
.cap-cta-card h2{margin:0;color:#fff;font-size:clamp(34px,3.5vw,52px);line-height:.97;letter-spacing:-.05em}
.cap-cta-copy{padding-left:32px;border-left:1px solid rgba(255,255,255,.25)}.cap-cta-copy p{margin:0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.6}.cap-cta-copy small{display:block;margin-top:9px;color:rgba(255,255,255,.52);font-size:10px}
.cap-btn-white{color:var(--cap-orange-2);background:#fff;box-shadow:0 14px 30px rgba(74,15,88,.15);white-space:nowrap}

.cap-reveal,.cap-stagger>*{opacity:0;transform:translateY(28px);filter:blur(5px);transition:opacity .75s var(--cap-spring),transform .75s var(--cap-spring),filter .75s ease}
.cap-reveal-left{transform:translateX(-34px)}.cap-reveal-right{transform:translateX(34px)}
.cap-reveal.cap-visible,.cap-stagger.cap-visible>*{opacity:1;transform:none;filter:none}
.cap-stagger.cap-visible>*:nth-child(2){transition-delay:.05s}.cap-stagger.cap-visible>*:nth-child(3){transition-delay:.10s}.cap-stagger.cap-visible>*:nth-child(4){transition-delay:.15s}.cap-stagger.cap-visible>*:nth-child(5){transition-delay:.20s}.cap-stagger.cap-visible>*:nth-child(6){transition-delay:.25s}.cap-stagger.cap-visible>*:nth-child(7){transition-delay:.30s}.cap-stagger.cap-visible>*:nth-child(8){transition-delay:.35s}

@media(max-width:1100px){
  .cap-hero-grid{grid-template-columns:1fr;gap:48px}.cap-hero-copy{max-width:780px}.cap-hero-visual{width:min(720px,100%);margin-inline:auto}
  .cap-card-grid{grid-template-columns:repeat(2,1fr)}.cap-service-card:nth-child(4n){border-right:1px solid var(--cap-line)}.cap-service-card:nth-child(2n){border-right:0}.cap-service-card:nth-child(n+5){border-bottom:1px solid var(--cap-line)}.cap-service-card:nth-child(n+7){border-bottom:0}
  .cap-connect-head{grid-template-columns:1fr;gap:28px}.cap-journey{grid-template-columns:1fr 1fr 1fr;gap:14px}.cap-journey>i{display:none}
  .cap-cta-card{grid-template-columns:1fr 1fr}.cap-cta-card .cap-btn{justify-self:start}
}
@media(max-width:720px){
  .cs-capabilities .cap-wrap{width:calc(100% - 26px)}.cap-hero{padding:46px 0 60px}.cap-hero-copy h1{font-size:clamp(48px,14vw,68px)}.cap-hero-copy p{font-size:15px}.cap-hero-actions{align-items:stretch;flex-direction:column}.cap-btn{width:100%}
  .cap-hero-visual{min-height:485px}.cap-visual-shell{height:485px}.cap-core{width:104px;height:104px;border-radius:25px}.cap-mini-card{width:147px;min-height:103px;padding:12px;grid-template-columns:22px 1fr}.cap-mini-card i{width:21px;height:21px}.cap-mini-card strong{font-size:8.5px}.cap-mini-card span{font-size:6.5px}
  .cap-mini-1{left:12px;top:28px}.cap-mini-2{right:12px;top:30px}.cap-mini-3{left:4px;top:195px}.cap-mini-4{right:4px;top:195px}.cap-mini-5{left:18px;bottom:27px}.cap-mini-6{right:18px;bottom:27px}
  .cap-card-section{padding-bottom:70px}.cap-card-grid{grid-template-columns:1fr}.cap-service-card,.cap-service-card:nth-child(4n),.cap-service-card:nth-child(2n),.cap-service-card:nth-child(n+5),.cap-service-card:nth-child(n+7){border-right:0;border-bottom:1px solid var(--cap-line)}.cap-service-card:last-child{border-bottom:0}.cap-service-card{min-height:auto}.cap-service-card p{min-height:0}
  .cap-connect-section{padding:78px 0}.cap-connect-head h2{font-size:clamp(42px,12vw,58px)}.cap-journey{grid-template-columns:1fr}.cap-connect-note{align-items:flex-start;flex-direction:column}
  .cap-final-cta{padding:52px 0 66px}.cap-cta-card{grid-template-columns:1fr;gap:24px;padding:30px 24px}.cap-cta-copy{padding-left:0;padding-top:20px;border-left:0;border-top:1px solid rgba(255,255,255,.25)}
}
@media(prefers-reduced-motion:reduce){.cap-reveal,.cap-stagger>*{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.cap-core,.cap-mini-card{animation:none!important}}
