/* Mobile-only logo timing is in section02-boundary.js; this sheet owns the
   live Illustrator collage. Its full text runs stay in the DOM throughout. */
@media (max-width:1180px) {
  .s03-services-area.is-mobile-service-flow .svc217-outro .svc237-canvas {
    font-weight:800;
    letter-spacing:-.04em;
  }
  .s03-services-area.is-mobile-service-flow .svc217-outro .svc237-canvas .svc237-phrase {
    /* Full text is the safe fallback if Safari declines the animation. */
    clip-path:none;
  }
  .s03-services-area.is-mobile-service-flow .svc237-frame.is-inview .svc237-phrase {
    animation:svc259-type var(--svc259-type-duration,.6s)
      steps(var(--svc259-char-count,12),end)
      var(--svc259-type-delay,0s) both;
  }
  /* Draw the selection beneath its letters just ahead of the typed reveal. */
  .s03-services-area.is-mobile-service-flow .svc237-canvas .svc237-phrase.is-selected::before {
    transform:scaleX(0);
    transform-origin:left center;
  }
  .s03-services-area.is-mobile-service-flow .svc237-frame.is-inview .svc237-phrase.is-selected::before {
    animation:svc259-select .38s cubic-bezier(.17,.82,.22,1) .31s both;
  }
  .s03-services-area.is-mobile-service-flow .svc237-frame.is-inview .svc237-portrait {
    animation:svc259-photo-pop .7s cubic-bezier(.18,.8,.24,1)
      var(--svc259-photo-delay,.16s) both;
  }
  .s03-services-area.is-mobile-service-flow .svc237-portrait {opacity:1;}
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-main-guide {
    opacity:1;stroke-dasharray:4000;stroke-dashoffset:0;
  }
  .s03-services-area.is-mobile-service-flow .svc237-frame.is-inview .svc259-main-guide {
    animation:svc259-main-guide .66s cubic-bezier(.2,.8,.25,1) .07s both;
  }
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-photo-guide {
    opacity:1;stroke-dasharray:200;stroke-dashoffset:0;
  }
  .s03-services-area.is-mobile-service-flow .svc237-frame.is-inview .svc259-photo-guide {
    animation:svc259-photo-guide .48s cubic-bezier(.2,.8,.25,1)
      var(--svc259-photo-delay,.23s) both;
  }
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-connector-guide,
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-handles {opacity:1;}
  .s03-services-area.is-mobile-service-flow .svc237-frame.is-inview .svc259-connector-guide,
  .s03-services-area.is-mobile-service-flow .svc237-frame.is-inview .svc259-handles {
    animation:svc259-handles .2s ease-out .67s both;
  }
}
@keyframes svc259-type {
  from {clip-path:inset(0 100% 0 0)}
  to {clip-path:inset(0 0 0 0)}
}
@keyframes svc259-select {
  from {transform:scaleX(0)}
  to {transform:scaleX(1)}
}
@keyframes svc259-photo-pop {
  0% {opacity:0;transform:perspective(260px) translate3d(0,14px,-80px) rotate(-13deg) rotateY(-12deg) scale(.28)}
  70% {opacity:1;transform:perspective(260px) translate3d(0,-2px,0) rotate(2deg) rotateY(1deg) scale(1.1)}
  100% {opacity:1;transform:none}
}
@keyframes svc259-main-guide {
  from {opacity:0;stroke-dashoffset:4000}
  to {opacity:1;stroke-dashoffset:0}
}
@keyframes svc259-photo-guide {
  from {opacity:0;stroke-dashoffset:200}
  to {opacity:1;stroke-dashoffset:0}
}
@keyframes svc259-handles {
  from {opacity:0}
  to {opacity:1}
}
@media (max-width:1180px) and (prefers-reduced-motion:reduce) {
  .s03-services-area.is-mobile-service-flow .svc217-outro .svc237-canvas .svc237-phrase {
    clip-path:none!important;animation:none!important;
  }
  .s03-services-area.is-mobile-service-flow .svc237-canvas .svc237-phrase.is-selected::before {
    transform:scaleX(1)!important;animation:none!important;
  }
  .s03-services-area.is-mobile-service-flow .svc237-frame .svc237-portrait {
    opacity:1!important;transform:none!important;animation:none!important;
  }
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-main-guide,
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-photo-guide,
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-connector-guide,
  .s03-services-area.is-mobile-service-flow .svc237-guides .svc259-handles {
    opacity:1!important;stroke-dashoffset:0!important;animation:none!important;
  }
}
