/* Scroll-driven service cards. All decorative artwork is local SVG. */
.service-stories{width:70%;margin:clamp(48px,5vw,100px) auto clamp(80px,10vw,190px);display:grid;gap:.625vw;color:#000;font-family:"PP Sans",Arial,sans-serif}
.service-story{--service-open:1;--service-ink:255;--service-fill:0;--service-opacity:1;--service-shift:0px;position:relative;isolation:isolate;overflow:hidden;border-radius:1.25vw;padding:3.75vw;color:rgb(var(--service-ink) var(--service-ink) var(--service-ink));overflow-anchor:none}
.service-story-fill{position:absolute;inset:0;z-index:-2;background:rgb(var(--service-fill) var(--service-fill) var(--service-fill))}
.service-story-art{position:absolute;right:0;bottom:0;width:44.35vw;max-width:none;height:auto;z-index:-1;pointer-events:none;opacity:var(--service-open);transform:translate3d(0,var(--service-shift),0);user-select:none}
.service-story h3{margin:0;font-size:2.625vw;font-weight:450;line-height:1.1;letter-spacing:-.025em}
.service-story-toggle{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;border:0;padding:0;text-align:left;color:inherit;background:none;font:inherit;letter-spacing:inherit;cursor:pointer}
.service-story-number{font-size:1.625vw;line-height:1.1;letter-spacing:-.02em;opacity:.5;flex-shrink:0}
.service-story-toggle:focus-visible,.service-story-link:focus-visible{outline:2px solid currentColor;outline-offset:7px;border-radius:3px}
.service-story-fold{display:grid;grid-template-rows:minmax(0,1fr)}
.service-stories.is-enhanced .service-story-fold{grid-template-rows:minmax(0,var(--service-row,1fr))}
.service-story-content{min-height:0;overflow:hidden}
.service-story-inner{opacity:var(--service-opacity);transform:translate3d(0,var(--service-shift),0)}
.service-story-inner p{max-width:56%;margin:2vw 0 0;font-size:1.25vw;font-weight:450;line-height:1.4;letter-spacing:normal}
.service-story-link{display:inline-flex;align-items:center;gap:1vw;margin-top:1.5vw;text-decoration:none;color:inherit;font-size:1.25vw;line-height:1.4}
.service-link-label{display:grid;overflow:hidden}
.service-link-label>span{grid-area:1/1;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.service-link-label>span+span{transform:translateY(130%)}
.service-link-icon{display:grid;place-items:center;width:2.5vw;height:2.5vw;border-radius:50%;background:#fff;color:#000;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.service-link-icon svg{width:40%;fill:none;stroke:currentColor;stroke-width:1.7}
@media(hover:hover){.service-story-link:hover .service-link-label>span{transform:translateY(-130%)}.service-story-link:hover .service-link-label>span+span{transform:translateY(0)}.service-story-link:hover .service-link-icon{transform:rotate(45deg)}}
@media(max-width:1024px){.service-stories{width:80%;gap:8px}.service-story{padding:36px;border-radius:18px}.service-story h3{font-size:30px}.service-story-number{font-size:19px}.service-story-inner p{font-size:16px;max-width:67%;margin-top:25px}.service-story-link{font-size:16px;gap:12px;margin-top:20px}.service-link-icon{width:34px;height:34px}.service-story-art{width:520px}}
@media(max-width:760px){.service-stories{width:calc(100% - 36px);gap:8px;margin:40px auto 80px}.service-story{padding:27px 24px;border-radius:16px}.service-story h3{font-size:25px;line-height:1.12;letter-spacing:-.025em}.service-story-number{font-size:15px;align-self:flex-start;padding-top:5px}.service-story-toggle{gap:15px}.service-story-inner p{max-width:100%;margin-top:23px;font-size:16px;line-height:1.45}.service-story-art{width:490px;right:-165px;opacity:calc(var(--service-open)*.6)}.service-story-link{font-size:16px;margin-top:21px;gap:12px}.service-link-icon{width:33px;height:33px}}
@media(prefers-reduced-motion:reduce){.service-story-art,.service-story-inner{transform:none}.service-link-label>span,.service-link-icon{transition:none}}
