/* A slim, independent chapter rail on the left; the photo holds its own space. */
@media(min-width:801px) and (min-height:651px) and (prefers-reduced-motion:no-preference){
.service-v91__inner{width:min(1600px,92%)}
.service-v91__layout{grid-template-columns:64px minmax(0,.83fr) minmax(0,1.17fr);column-gap:clamp(22px,2.8vw,48px)}
.service-v91__stories{grid-column:2}
.service-v91__story{padding-right:4%}
.service-v91__visual{grid-column:3;top:16svh;margin-top:5svh;padding-bottom:0}
.service-v91__deck{height:clamp(340px,59svh,680px)}
.service-v91__index{position:sticky;top:14svh;grid-column:1;grid-row:1;align-self:start;margin:0;order:initial;width:64px;height:70svh;min-height:480px;max-height:720px;display:flex;flex-direction:column;transform:translateX(calc(-1 * var(--service-edge-offset,max(4vw,(100vw - 1600px)/2))))}
.service-v91__index>p{display:block;margin:0 0 26px;padding-left:15px;font-size:9px;line-height:1.65;letter-spacing:.13em}
.service-v91__index>p>span{display:block}
.service-v91__index [data-service-count]{margin-top:9px;color:#c3c8d2;font-size:9px;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.service-v91__index ol{display:flex;flex:1;flex-direction:column;gap:0}
.service-v91__index li{flex:1;display:flex}
.service-v91__index button{position:relative;align-items:flex-start;gap:9px;min-height:82px;height:100%;justify-content:center;padding:16px 0 16px 15px;border:0;border-left:1px solid #353b47;font-size:9.5px;white-space:nowrap;line-height:1.5;letter-spacing:0;color:#8c95a5}
.service-v91__index button span{font-size:17px;line-height:1;font-weight:700}
.service-v91__index button[aria-current="location"]{border-color:#ff6b00;color:#fff}
.service-v91__index button[aria-current="location"] span{color:#ff6b00}
.service-v91__index button:hover{background:rgba(255,255,255,.035);border-color:#ff6b00;color:#fff}
.service-v91__index button:focus-visible{outline:2px solid #ff6b00;outline-offset:4px}
}
/* The orange curtain rises from the bottom, followed by the photograph. */
.flow .service-v91__slide{clip-path:inset(var(--service-frame-top,100%) 0 0 0);background:#ff6b00;will-change:clip-path}
.service-v91__slide:first-child{--service-frame-top:0%;--service-image-top:0%}
.service-v91__slide img{clip-path:inset(var(--service-image-top,100%) 0 0 0);transform:none;will-change:clip-path}
@media(max-width:800px),(max-height:650px),(prefers-reduced-motion:reduce){
.service-v91__index{position:relative;display:block;margin:30px 0 10px}
.service-v91__index>p{display:flex;align-items:center;justify-content:space-between;font-size:10px;line-height:1.5}
.service-v91__index>p br{display:none}
.service-v91__index>p br::after{content:" "}
.service-v91__index ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.service-v91__index button{min-height:58px;font-size:10px;gap:8px}
}
@media(prefers-reduced-motion:reduce){
.flow .service-v91__slide,.service-v91__slide img{clip-path:none;will-change:auto}
}

.image-motion-ready .service-v91__mobile-photo.is-image-visible::after{animation-name:service-v95-curtain}
@keyframes service-v95-curtain{0%{transform:scaleY(0);transform-origin:bottom}43%{transform:scaleY(1);transform-origin:bottom}44%{transform:scaleY(1);transform-origin:top}100%{transform:scaleY(0);transform-origin:top}}

/* The same photograph becomes an atmospheric, softly defocused backdrop. */
.flow .service-v91{position:relative;isolation:isolate}
.service-v91__inner{position:relative;z-index:1}
.service-v96__ambience{position:absolute;z-index:0;inset:0;overflow:clip;pointer-events:none}
.service-v96__window{position:sticky;top:0;height:100svh;overflow:hidden;background:#080b14;isolation:isolate}
.flow .service-v96__background{position:absolute;inset:-60px;margin:0;opacity:var(--service-background-opacity,0);overflow:hidden;will-change:opacity}
.service-v96__background:first-child{--service-background-opacity:1}
.service-v96__background img{display:block;width:100%;height:100%;object-fit:cover;filter:blur(4px) saturate(.65) brightness(.65);opacity:.65}
.service-v96__window::after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,#080b14,rgba(8,11,20,.45) 22%,rgba(8,11,20,.55) 78%,#080b14);pointer-events:none}
@media(max-width:700px){
 .service-v96__background img{filter:blur(3px) saturate(.65) brightness(.65)}
 .service-v96__window::after{background:linear-gradient(180deg,#080b14,rgba(8,11,20,.62) 20%,rgba(8,11,20,.68) 80%,#080b14)}
}
@media(prefers-reduced-motion:reduce){.service-v96__background{will-change:auto}}

/* Hold the final text and image in frames of equal height, then release together. */
@media(min-width:801px) and (min-height:651px) and (prefers-reduced-motion:no-preference){
 .service-v91__deck{height:var(--service-end-height,clamp(340px,59svh,680px))}
 #service-story-03{display:block;padding-top:0;padding-bottom:0;min-height:calc(var(--service-end-height,480px) + 18svh)}
 #service-story-03 .service-v91__copy{position:sticky;top:16svh;display:flex;align-items:center;height:var(--service-end-height,480px)}
 .service-v99__last-body{display:flow-root;width:100%}
 .flow .service-v91{padding-bottom:65px}
}
