/* Shared moving backdrop for the full service collection. */
.capabilities-intro{position:relative;isolation:isolate;overflow:hidden;background:#111}
.services-intro-layout,.capabilities-intro .expertise-jumps{position:relative;z-index:1}
.services-intro-copy{max-width:900px;min-width:0}
.capabilities-intro .services-intro-copy .section-label{color:#b9beb4}
.capabilities-intro .services-intro-copy h2{font-size:clamp(42px,5.8vw,82px);margin:25px 0}
.capabilities-intro .services-intro-copy p{font-size:16px;line-height:1.75;color:#d5d8d0;max-width:660px;margin:0}
.services-motion-frame{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:.7;mask-image:linear-gradient(180deg,#000 0%,#000 88%,transparent);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 88%,transparent)}
.services-ribbon{display:block;position:absolute;right:-7%;top:0;width:90%;height:auto;aspect-ratio:2.16;object-fit:contain;transform:translateY(-50%) rotate(-45deg);transform-origin:right center;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.services-intro-copy{text-shadow:0 2px 18px #111,0 1px 4px #111}
@media(max-width:760px){.capabilities-intro .services-intro-copy h2{font-size:clamp(36px,8vw,48px)}.capabilities-intro .services-intro-copy p{font-size:15px}.services-motion-frame{opacity:.4}}

.approach{position:relative;isolation:isolate;overflow:hidden;background:#fafbf8}
.approach>.section-top,.approach>.steps{position:relative;z-index:1}
.approach>.services-motion-frame{opacity:.4}
@media(max-width:760px){.approach>.services-motion-frame{opacity:.25}}
