/* Services: a cluster of circles, the active service is the big one */
.svc-stage{position:relative;overflow:hidden;background:#000;border:1px solid var(--line);border-radius:32px;padding:clamp(24px,4vw,56px);display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,4vw,64px);align-items:center}
.svc-copy{position:relative;z-index:2;min-width:0}
.svc-copy .svc-text{transition:opacity .35s ease,transform .5s cubic-bezier(.2,.8,.2,1)}
.svc-copy.swap .svc-text{opacity:0;transform:translateY(14px)}
.svc-copy h3{font-size:clamp(2rem,3.6vw,3rem);line-height:1.05;margin-bottom:14px}
.svc-copy p{color:#c2cce6;font-size:1.05rem;max-width:42ch}
.svc-copy .chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.svc-ctl{display:flex;align-items:center;gap:14px;margin-top:30px;flex-wrap:wrap}
.svc-go{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:12px;background:rgba(255,255,255,.14);border:0;color:#fff;font-weight:600;font-size:.92rem;font-family:inherit;cursor:pointer;transition:background .2s,transform .2s}
.svc-go:hover{background:rgba(255,255,255,.26);transform:translateY(-2px)}
.svc-arrow{width:42px;height:42px;border-radius:12px;border:0;background:#fff;color:#000;display:grid;place-items:center;cursor:pointer;transition:transform .2s}
.svc-arrow:hover{transform:scale(1.08)}
.svc-dots{display:flex;gap:7px;margin-top:22px}
.svc-dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35);cursor:pointer;transition:background .3s,transform .3s}
.svc-dots i.on{background:#fff;transform:scale(1.25)}
.svc-cluster{position:relative;width:100%;aspect-ratio:1.05/1}
.svc-c{position:absolute;left:var(--x);top:var(--y);width:var(--d);aspect-ratio:1/1;translate:-50% -50%;padding:0;border:0;border-radius:50%;overflow:hidden;cursor:pointer;background:#120d2a;transition:left 1s cubic-bezier(.65,0,.2,1),top 1s cubic-bezier(.65,0,.2,1),width 1s cubic-bezier(.65,0,.2,1),box-shadow .6s;box-shadow:0 10px 30px rgba(0,0,0,.6)}
.svc-c.s0{--x:64%;--y:47%;--d:60%;box-shadow:0 0 90px rgba(145,96,214,.38),0 20px 50px rgba(0,0,0,.7)}
.svc-c.s1{--x:15%;--y:31%;--d:29%}
.svc-c.s2{--x:25%;--y:76%;--d:32%}
.svc-c.s3{--x:41%;--y:6%;--d:15%}
.svc-c .in{position:absolute;inset:-3%;animation:svcfloat 7s ease-in-out infinite}
.svc-c.s1 .in{animation-delay:-2s}.svc-c.s2 .in{animation-delay:-4s}.svc-c.s3 .in{animation-delay:-1s}
.svc-c .in>img,.svc-c .in>svg{width:100%;height:100%;display:block;object-fit:cover}
.svc-c:not(.s0):hover{box-shadow:0 0 0 3px rgba(201,139,255,.7),0 10px 30px rgba(0,0,0,.6)}
@keyframes svcfloat{50%{transform:scale(1.07) translateY(-2%)}}
@media (max-width:860px){.svc-stage{grid-template-columns:1fr}.svc-cluster{order:-1;aspect-ratio:1/1}}
@media (prefers-reduced-motion:reduce){.svc-c .in{animation:none}.svc-c{transition:none}}
