/* Services as one card at a time: the section pins, and each scroll step brings the next card in from alternating sides
   (right, left, right, ...) while the previous one slides out on its own side. Switched on by assets/js/services-stack.js
   (adds .sv-cards, wraps the panels in .sv-stage); without JS, or with reduced motion, the plain panels from services.css are used. */
.sv.sv-cards{overflow:clip;padding-bottom:clamp(40px,7vh,90px)}
.sv-cards .sv-stack{perspective:none;position:relative}
.sv-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:clip}
.sv-cards .sv-p{position:absolute;top:17vh;top:17svh;width:min(58vw,960px);height:66vh;height:66svh;min-height:380px;margin:0;border-radius:24px;
  z-index:1;opacity:0;visibility:hidden;will-change:transform,opacity;box-shadow:0 30px 80px rgba(0,0,0,.22);transition:none}
.sv-cards .sv-p:nth-of-type(odd){right:4vw;left:auto}
.sv-cards .sv-p:nth-of-type(even){left:4vw;right:auto}
.sv-cards .sv-p.no-media{height:66vh;height:66svh;min-height:380px}
.sv-cards .sv-copy{transform:none;top:auto;bottom:clamp(30px,7vh,64px);left:6%;right:6%}
.sv-cards .sv-t{font-size:clamp(32px,4.4vw,74px)}
.sv-cards .sv-num{font-size:12px}
/* the empty side: big counter and the card's name */
.sv-cap{position:absolute;top:50%;width:30vw;max-width:420px;transform:translateY(-50%);pointer-events:none;color:var(--text,#111)}
.sv-cap.l{left:5vw}
.sv-cap.r{right:5vw;text-align:right}
.sv-cap b{display:block;font-weight:600;font-size:clamp(80px,11vw,190px);line-height:.85;letter-spacing:-.06em;color:rgba(0,0,0,.16)}
.sv-cap span{display:block;margin-top:14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute,#5f5f66)}
.sv-cap em{display:block;margin-top:6px;font-style:normal;font-weight:600;font-size:clamp(18px,1.8vw,26px);letter-spacing:-.02em}
.sv-cap.swap{animation:svCap .6s cubic-bezier(.2,.7,.2,1)}
@keyframes svCap{from{opacity:0;transform:translateY(calc(-50% + 18px))}to{opacity:1;transform:translateY(-50%)}}
@media (max-width:760px){
  .sv-cards .sv-p{width:auto;left:4vw!important;right:4vw!important;top:14vh;top:14svh;height:68vh;height:68svh;min-height:340px;border-radius:20px}
  .sv-cards .sv-copy{left:20px;right:20px}
  .sv-cards .sv-t{font-size:clamp(28px,8.4vw,44px)}
  .sv-cap{display:none}
}
@media (prefers-reduced-motion:reduce){.sv-cap.swap{animation:none}}
