/* Shared motion language for Astley Digital's rebuilt templates. */
.ad-motion-enabled .ad-motion-reveal{opacity:0;transform:translate3d(0,22px,0);transition:opacity .72s cubic-bezier(.2,.7,.2,1),transform .72s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--ad-reveal-order,0) * 70ms)}
.ad-motion-enabled .ad-motion-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
.ad-motion-enabled .ad-motion-reveal.is-visible:hover{transform:translate3d(0,var(--ad-card-lift,0),0)}
.ad-motion-enabled .ad-motion-section{position:relative}.ad-motion-enabled .ad-motion-section:where(.is-visible){animation:ad-section-arrive .8s ease both}
.ad-motion-depth{transform:perspective(1100px) rotateX(var(--ad-depth-y,0deg)) rotateY(var(--ad-depth-x,0deg));transform-style:preserve-3d;transition:transform .22s ease-out!important;will-change:transform}
.ad-motion-button{position:relative;isolation:isolate;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease!important}.ad-motion-button:before{position:absolute;z-index:-1;top:-100%;left:-45%;width:35%;height:300%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);content:"";transform:rotate(18deg) translateX(-220%);transition:transform .65s ease}.ad-motion-button:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(81,30,172,.2)}.ad-motion-button:hover:before{transform:rotate(18deg) translateX(520%)}
main article,main [class*="card"]{transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}main article:hover,main [class*="card"]:hover{--ad-card-lift:-4px}
.ad-status-history__bars i{transform-origin:center bottom;animation:ad-status-bar-rise .55s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--ad-reveal-order,0) * 20ms)}
.ad-status-radar__core{animation:ad-status-core-breathe 3.8s ease-in-out infinite}.ad-status-radar__node b,.ad-status-updated i,.ad-status-banner__pulse i{animation:ad-status-live-pulse 2.2s ease-in-out infinite}
.ad-infrastructure-page [class*="traffic"],.ad-infrastructure-page [class*="route"]{filter:drop-shadow(0 0 7px rgba(94,114,255,.45))}
@keyframes ad-section-arrive{from{opacity:.7}to{opacity:1}}@keyframes ad-status-bar-rise{from{transform:scaleY(.15);opacity:.35}to{transform:scaleY(1);opacity:1}}@keyframes ad-status-core-breathe{0%,100%{box-shadow:0 22px 48px rgba(84,31,166,.25),inset 0 1px rgba(255,255,255,.22)}50%{box-shadow:0 25px 62px rgba(84,31,166,.38),0 0 0 10px rgba(113,48,231,.05),inset 0 1px rgba(255,255,255,.22)}}@keyframes ad-status-live-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.75)}}
@media(prefers-reduced-motion:reduce){.ad-motion-enabled .ad-motion-reveal{opacity:1;transform:none;transition:none}.ad-motion-enabled .ad-motion-section,.ad-status-history__bars i,.ad-status-radar__core,.ad-status-radar__node b,.ad-status-updated i,.ad-status-banner__pulse i{animation:none!important}.ad-motion-depth{transform:none!important;transition:none!important}.ad-motion-button{transition:none!important}.ad-motion-button:before{display:none}}
@media(max-width:700px){.ad-motion-enabled .ad-motion-reveal{transform:translate3d(0,14px,0);transition-duration:.55s}.ad-motion-depth{transform:none!important}.ad-motion-button:hover{transform:none}}
