/* Homepage scroll-motion refinement. Scoped to the native homepage (.elementor-86).
   Contract (set only by homepage-motion.js when motion is allowed):
   .sv-home[data-sv-home-motion=on]
   group[data-sv-enter=pending|entered|instant][data-sv-enter-kind=media|text]
   .sv-therapy/.sv-faq --sv-tone-x / --sv-tone-r (light-zone inset + corner radius). */

/* Anchors: land immediately, headings clear of the floating navigation. */
html:root{scroll-behavior:auto}
.elementor-86 .sv-home>:is(#provider,#services,#faq,#doctor,#resources){scroll-margin-top:96px}

@media(prefers-reduced-motion:no-preference){
  /* Light zone (Types Of Therapy + FAQ) as one continuous warm panel. Content
     always sits on its own tone; only the panel's side edges and corners move. */
  .elementor-86 .sv-home[data-sv-home-motion=on] :is(.sv-therapy,.sv-faq){position:relative;isolation:isolate;background:transparent}
  .elementor-86 .sv-home[data-sv-home-motion=on] :is(.sv-therapy,.sv-faq)::before{
    content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--sv-light)}
  .elementor-86 .sv-home[data-sv-home-motion=on] .sv-therapy::before{bottom:-1px;
    clip-path:inset(0 var(--sv-tone-x,0px) 0 var(--sv-tone-x,0px) round var(--sv-tone-r,0px) var(--sv-tone-r,0px) 0 0)}
  .elementor-86 .sv-home[data-sv-home-motion=on] .sv-faq::before{
    clip-path:inset(0 var(--sv-tone-x,0px) 0 var(--sv-tone-x,0px) round 0 0 var(--sv-tone-r,0px) var(--sv-tone-r,0px))}

  /* Coordinated entrances: media and copy of one row share a start; content is
     legible (≥ .94 opacity) before, during and after. Entered once only. */
  .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter]{
    --sv-enter-ease:var(--sv-ease,cubic-bezier(.22,1,.36,1));
    transition:opacity .7s var(--sv-enter-ease) var(--sv-enter-delay,0ms),transform .7s var(--sv-enter-ease) var(--sv-enter-delay,0ms)}
  .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter-kind=media]{
    transition-duration:.8s;transition-property:opacity,transform}
  .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter=pending]{opacity:.94;transform:translate3d(0,14px,0)}
  .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter=pending][data-sv-enter-kind=media]{transform:translate3d(0,18px,0)}
  /* Subtle image settle inside existing rounded frames (frames clip overflow). */
  .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter-kind=media] img{
    transition:transform 1.4s var(--sv-ease,cubic-bezier(.22,1,.36,1)) var(--sv-enter-delay,0ms)}
  .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter=pending][data-sv-enter-kind=media] img{transform:scale(1.045)}
  .elementor-86 .sv-home[data-sv-home-motion=on] :is([data-sv-enter=instant],[data-sv-enter=instant] img){transition:none!important}

  /* Retire the old per-element reveal wherever grouped entrances own a section. */
  .elementor-86 .sv-home[data-sv-home-motion=on] :is(.sv-therapy,.sv-faq,.sv-doctor,.sv-library,.sv-closing) [data-sv-reveal]{opacity:1;transform:none;transition:none}

  /* Mobile: same character, simpler motion: shorter travel, no image scale, no stagger. */
  @media(max-width:760px){
    .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter]{transition-duration:.48s;transition-delay:0ms}
    .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter=pending],
    .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter=pending][data-sv-enter-kind=media]{transform:translate3d(0,8px,0)}
    .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter-kind=media] img,
    .elementor-86 .sv-home[data-sv-home-motion=on] [data-sv-enter=pending][data-sv-enter-kind=media] img{transform:none;transition:none}
  }
}
