/* Shared motion language for the three audience pages. The page is readable without JS. */
:root{--motion-ease:cubic-bezier(.22,1,.36,1)}
.reading-progress{position:fixed;z-index:1000;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#547963,#d3ad58);transform:scaleX(0);transform-origin:left center;pointer-events:none}
.scroll-reveal-ready .scroll-reveal-pending{opacity:0;transform:translate3d(0,26px,0)}
.scroll-reveal-ready .scroll-reveal-pending.is-revealed{opacity:1;transform:translate3d(0,0,0);transition:opacity .65s ease-out,transform .65s var(--motion-ease);transition-delay:var(--reveal-delay,0ms)}
.scroll-reveal-ready .scroll-reveal-pending.scenario-card{transform:translate3d(0,32px,0) scale(.985)}
.scroll-reveal-ready .scroll-reveal-pending.scenario-card.is-revealed{transform:translate3d(0,0,0) scale(1)}
.scenario-card,.directory-group,.proof-card,.process-step,.tile,.faq-item{transition:transform .32s var(--motion-ease),box-shadow .32s ease,border-color .32s ease,background-color .32s ease}
.scenario-card .scenario-photo{transition:transform .65s var(--motion-ease),filter .45s ease;transform-origin:center center}
@media(hover:hover) and (pointer:fine){
  .scroll-reveal-ready .scenario-card.is-revealed:hover,.scenario-card:hover{transform:translateY(-7px);box-shadow:0 22px 44px rgba(31,56,37,.16)}
  .scenario-card:hover .scenario-photo{transform:scale(1.055);filter:saturate(1.08)}
  .directory-group:hover,.proof-card:hover,.process-step:hover,.tile:hover{transform:translateY(-5px);box-shadow:0 17px 36px rgba(31,56,37,.12)}
  .scenario-case-nav a:hover,.scenario-tab:hover,.btn:hover,.button:hover,.cta:hover{transform:translateY(-3px)}
  .scenario-link:hover{letter-spacing:.015em}
  .faq-item:hover{border-color:#a9bd9c;box-shadow:0 9px 24px rgba(31,56,37,.08)}
}
.scenario-link,.scenario-case-nav a,.scenario-tab,.btn,.button,.cta{transition:transform .25s var(--motion-ease),background-color .25s ease,border-color .25s ease,color .25s ease,letter-spacing .25s ease}
.scenario-case-nav a:active,.scenario-tab:active,.btn:active,.button:active,.cta:active{transform:scale(.975)}
.scenario-card:target{outline:3px solid #c8a65c;outline-offset:4px;animation:case-attention .7s var(--motion-ease)}
@keyframes case-attention{from{box-shadow:0 0 0 10px rgba(211,173,88,.28)}to{box-shadow:0 0 0 0 rgba(211,173,88,0)}}
.faq-item[open]{border-color:#9db792;box-shadow:0 12px 28px rgba(31,56,37,.09)}
.faq-item summary{cursor:pointer}
.scenario-card{transform-style:preserve-3d;will-change:transform}
@media(hover:hover) and (pointer:fine){
  .scenario-card.is-depth-active{transform:perspective(1000px) rotateX(var(--depth-x,0deg)) rotateY(var(--depth-y,0deg)) translateY(-7px)!important;box-shadow:var(--depth-shadow,0 22px 44px rgba(31,56,37,.16))}
  .scenario-card.is-depth-active .scenario-photo{transform:translateZ(12px) scale(1.055)}
}
@media(max-width:700px){.scroll-reveal-ready .scroll-reveal-pending,.scroll-reveal-ready .scroll-reveal-pending.scenario-card{transform:translate3d(0,16px,0)}.scroll-reveal-ready .scroll-reveal-pending.is-revealed,.scroll-reveal-ready .scroll-reveal-pending.scenario-card.is-revealed{transform:none}.scenario-card:hover,.directory-group:hover,.proof-card:hover,.process-step:hover,.tile:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.scroll-reveal-ready .scroll-reveal-pending,.scroll-reveal-ready .scroll-reveal-pending.scenario-card{opacity:1;transform:none;transition:none}.reading-progress{display:none}.scenario-card,.directory-group,.proof-card,.process-step,.tile,.faq-item,.scenario-photo,.scenario-link,.scenario-case-nav a,.scenario-tab,.btn,.button,.cta{animation:none!important;transition:none!important;transform:none!important}}
