/* Joy's Box V79 — restore approved mobile motion on top of V78 iOS memory stability. */
@media (max-width:900px){
  /* ================================================================
     THE WORK BEHIND — pinned cinematic scrub (approved V76 language)
     ================================================================ */
  .services-v52{overflow:visible!important;padding:82px 20px 0!important;background:#0b0b0a!important}
  .services-v52__head{padding:0!important;margin-bottom:46px!important}
  .services-v52__head .display-title{max-width:360px!important;font-size:clamp(52px,14.7vw,74px)!important;line-height:.79!important;letter-spacing:-.052em!important}
  .services-v52__head>p{max-width:34ch!important;margin-top:22px!important;font-size:11.5px!important;line-height:1.66!important}
  .services-v52 .work-v78{display:none!important}
  .services-v52 .cap-v52{position:relative!important;display:block!important;width:100%!important;margin:0!important}
  .cap-v52__visual{display:block!important;position:sticky!important;top:12svh!important;z-index:5!important;width:calc(100% + 40px)!important;height:69svh!important;min-height:440px!important;max-height:650px!important;margin-left:-20px!important;transform:none!important;will-change:auto!important}
  .cap-v52__frame{position:relative!important;width:100%!important;height:100%!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#10100f!important;overflow:hidden!important;isolation:isolate}
  .cap-v52__frame::before{display:none!important}
  .cap-v52__frame::after{content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:7!important;border-radius:0!important;background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.02) 38%,rgba(0,0,0,.68) 100%),linear-gradient(90deg,rgba(0,0,0,.17),transparent 44%,rgba(0,0,0,.05))!important;pointer-events:none!important}
  .cap-v52__shade{z-index:6!important;background:linear-gradient(180deg,transparent 36%,rgba(0,0,0,.58) 100%)!important}
  .cap-v52__chrome,.cap-v52__ghost,.cap-v52__hud{display:none!important}
  .cap-v52__image{display:block!important;position:absolute!important;inset:-3% 0!important;width:100%!important;height:106%!important;margin:0!important;opacity:0!important;clip-path:none!important;transform:translate3d(0,0,0) scale(1.04)!important;transition:none!important;will-change:auto!important}
  .cap-v52__image.is-active{clip-path:none!important}
  .cap-v52__image img,.cap-v58__media,.cap-v58__media img{width:100%!important;height:100%!important;object-fit:cover!important}
  .cap-v52__image img{display:block!important;filter:saturate(.88) contrast(1.04) brightness(.82)!important;transform:none!important}
  .cap-v58__media{position:absolute!important;inset:0!important}
  .cap-v79__copy{position:absolute;z-index:12;left:20px;right:20px;bottom:22px;color:#f4f1ea;pointer-events:none}
  .cap-v79__copy-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px;color:rgba(255,255,255,.62);font:700 7px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase}
  .cap-v79__copy-top b{color:#f2efe8;font:700 9px/1 var(--sans);letter-spacing:.12em}
  .cap-v79__copy h3{max-width:9ch;margin:0;color:#f4f1ea;font:600 clamp(46px,12.6vw,62px)/.78 var(--cond);letter-spacing:-.045em;text-transform:uppercase}
  .cap-v79__copy p{max-width:31ch;margin:15px 0 0;color:rgba(255,255,255,.70);font:500 10.8px/1.58 var(--sans)}
  .cap-v79__progress{position:absolute;z-index:12;top:18px;left:20px;right:20px;height:1px;background:rgba(255,255,255,.16);overflow:hidden;pointer-events:none}
  .cap-v79__progress i{display:block;width:100%;height:100%;background:rgba(255,255,255,.82);transform:scaleX(var(--cap-v79-progress,0));transform-origin:left center}
  .cap-v52__chapters{position:relative!important;z-index:1!important;display:block!important;width:100%!important;margin-top:-69svh!important;padding-top:69svh!important;border:0!important;overflow:visible!important}
  .cap-v52__chapter,.cap-v52__chapter.is-active{display:block!important;width:100%!important;height:55svh!important;min-height:390px!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;transform:none!important;pointer-events:none!important}
  .cap-v52__chapter::before,.cap-v52__chapter::after,.cap-v52__mobile-image,.cap-v52__chapter>.cap-v52__meta,.cap-v52__chapter>h3,.cap-v52__chapter>p{display:none!important}
  .services-v52 .portfolio-rail{position:relative!important;z-index:8!important;margin:7svh -20px 0!important;padding-top:0!important}

  /* ================================================================
     SERVICES MARQUEE — animate a child wrapper immune to legacy rules.
     ================================================================ */
  html.v79-mobile .portfolio-marquee{display:block!important;overflow:hidden!important;visibility:visible!important;opacity:1!important;touch-action:pan-y!important}
  html.v79-mobile .portfolio-marquee .marquee__inner{display:block!important;width:max-content!important;min-width:max-content!important;padding:0!important;animation:none!important;transform:none!important;opacity:1!important;visibility:visible!important}
  html.v79-mobile .marquee-v79-motion{display:flex!important;align-items:center!important;width:max-content!important;min-width:max-content!important;gap:20px!important;transform:translate3d(0,0,0);backface-visibility:hidden;visibility:visible!important;opacity:1!important}
  html.v79-mobile .portfolio-marquee span{display:inline-block!important;flex:none!important;white-space:nowrap!important;font-size:clamp(35px,10vw,48px)!important;visibility:visible!important;opacity:1!important}
  html.v79-mobile .portfolio-marquee i{display:inline-block!important;flex:none!important;font-size:13px!important;visibility:visible!important;opacity:1!important}

  /* ================================================================
     PROJECT ARCHIVE — restore stacking motion, but only nearby cards
     get transforms/compositing so Safari does not carry eight hot layers.
     ================================================================ */
  html.v35-mobile .work-archive{overflow:visible!important;padding:84px 18px 92px!important;overflow-anchor:none!important}
  html.v35-mobile .archive-stack{display:block!important;position:relative!important;overflow:visible!important;overflow-anchor:none!important}
  html.v35-mobile .archive-card{position:sticky!important;top:76px!important;width:100%!important;height:72svh!important;min-height:500px!important;max-height:650px!important;margin:0 0 15svh!important;border-radius:20px!important;overflow:hidden!important;z-index:var(--v79-z,1)!important;opacity:1!important;filter:none!important;box-shadow:0 18px 44px rgba(0,0,0,.20)!important;transform:none!important;transform-origin:50% 10%!important;transition:none!important;contain:paint!important;overflow-anchor:none!important;backface-visibility:hidden!important}
  html.v35-mobile .archive-card.v79-hot{transform:translate3d(0,var(--v79-card-y,0px),0) scale(var(--v79-card-scale,1))!important}
  html.v35-mobile .archive-card:last-child{margin-bottom:0!important}
  html.v35-mobile .archive-card>img{width:100%!important;height:100%!important;object-fit:cover!important;filter:none!important;transition:none!important;transform:scale(1.045)!important;backface-visibility:hidden!important}
  html.v35-mobile .archive-card.v79-hot>img{transform:translate3d(0,var(--v79-img-y,0px),0) scale(var(--v79-img-scale,1.045))!important}
  html.v35-mobile .archive-card::after{display:block!important;opacity:var(--v79-glow,.08)!important;background:linear-gradient(180deg,rgba(216,187,107,.05),transparent 34%)!important}
  html.v35-mobile .archive-card__bottom h3{transform:none!important}
}

@media(max-width:430px){
  .cap-v52__visual{height:67svh!important}
  .cap-v52__chapters{margin-top:-67svh!important;padding-top:67svh!important}
  html.v35-mobile .archive-card{top:70px!important;height:70svh!important;min-height:470px!important}
}

@media(prefers-reduced-motion:reduce){
  .cap-v52__image{opacity:0!important;transform:none!important}
  .cap-v52__image:first-child{opacity:1!important}
  html.v79-mobile .marquee-v79-motion{transform:none!important}
  html.v35-mobile .archive-card,html.v35-mobile .archive-card.v79-hot{transform:none!important}
}
