.gentle-motion .scroll-reveal{opacity:1;transform:translateY(12px);transition:transform .35s cubic-bezier(.2,.65,.3,1)}
.gentle-motion .scroll-reveal.revealed{opacity:1;transform:translateY(0)}
.gentle-motion .button{position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .3s ease,background .25s ease}
.gentle-motion .button:before{content:'';position:absolute;inset:0;transform:translateX(-140%) skewX(-18deg);background:linear-gradient(90deg,transparent,#ffffff24,transparent);pointer-events:none;transition:transform .65s ease}
.gentle-motion .button:hover:before,.gentle-motion .button:focus-visible:before{transform:translateX(140%) skewX(-18deg)}
.gentle-motion .button:hover,.gentle-motion .button:focus-visible{box-shadow:0 8px 24px #0098DA26;transform:translateY(-3px)}
.gentle-motion .button>span{display:inline-block;transition:transform .3s ease}.gentle-motion .button:hover>span{transform:translate(3px,-3px)}
.gentle-motion .step-icon{transition:transform .4s cubic-bezier(.2,.65,.3,1)}.gentle-motion .steps article:hover .step-icon{transform:translateY(-4px) rotate(-4deg)}
.gentle-motion .header nav a{transition:color .25s ease,border-color .25s ease}.gentle-motion .filters button{transition:background .25s ease,color .25s ease,transform .25s ease}.gentle-motion .filters button:hover{transform:translateY(-2px)}
.gentle-motion .service-list summary{transition:color .25s ease}.gentle-motion .service-list summary:hover{color:var(--blue)}
@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1!important;transform:none!important;transition:none!important}.button:before{display:none}}
@media print{.scroll-reveal{opacity:1!important;transform:none!important}}
