.page-motion .page-head h1,.page-motion .intro h1,.page-motion .contact-hero h1{animation:motionRise .9s cubic-bezier(.2,.7,.2,1) both}
.page-motion .page-head span,.page-motion .intro>div>span,.page-motion .eyebrow{animation:motionRise .75s .08s cubic-bezier(.2,.7,.2,1) both}
.page-motion .intro p{animation:motionRise .85s .16s cubic-bezier(.2,.7,.2,1) both}
.page-motion .contact-intro p{animation:motionRise .85s .16s cubic-bezier(.2,.7,.2,1) both}
.page-motion .hero-copy h1{animation:motionRise .9s cubic-bezier(.2,.7,.2,1) both}
.page-motion .hero-copy p{animation:motionRise .85s .14s cubic-bezier(.2,.7,.2,1) both}
.page-motion .hero-copy .button{animation:motionRise .8s .24s cubic-bezier(.2,.7,.2,1) both}
.page-motion .product .product-image{animation:none}
.page-motion .product:nth-child(3n+2) .product-image{animation-delay:.45s}
.page-motion .product:nth-child(3n) .product-image{animation-delay:.9s}
.page-motion .material-visual{animation:motionFloat 6s ease-in-out infinite}
.page-motion .material:nth-of-type(even) .material-visual{animation-delay:.7s}
.page-motion .swatch-grid i{transition:transform .3s ease,box-shadow .3s ease}
.page-motion .swatch-grid div:hover i{transform:translateY(-5px) scale(1.05);box-shadow:0 10px 24px rgba(41,41,41,.13),inset 0 0 0 5px rgba(255,255,255,.22)}
.page-motion .contact-stage:before{animation:motionRing 5s ease-in-out infinite}
.page-motion .contact-stage:after{animation:motionRing 5s .7s ease-in-out infinite}
.page-motion .contact-card a,.page-motion .help a,.page-motion .footer-main a{position:relative;overflow:hidden}
.page-motion .contact-card a:after,.page-motion .help a:after,.page-motion .footer-main a:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.48) 50%,transparent 75%);transform:translateX(-130%)}
.page-motion .contact-card a:hover:after,.page-motion .help a:hover:after,.page-motion .footer-main a:hover:after{animation:motionSweep .7s ease}
.motion-ready .motion-reveal{opacity:0;transform:translateY(34px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.motion-ready .motion-reveal.in-view{opacity:1;transform:none}
@keyframes motionRise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes motionFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes motionRing{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.08);opacity:1}}
@keyframes motionSweep{to{transform:translateX(130%)}}
@media(prefers-reduced-motion:reduce){.page-motion .page-head h1,.page-motion .page-head span,.page-motion .intro h1,.page-motion .intro>div>span,.page-motion .intro p,.page-motion .contact-hero h1,.page-motion .eyebrow,.page-motion .contact-intro p,.page-motion .hero-copy h1,.page-motion .hero-copy p,.page-motion .hero-copy .button,.page-motion .product .product-image,.page-motion .material-visual,.page-motion .contact-stage:before,.page-motion .contact-stage:after{animation:none}.motion-ready .motion-reveal{opacity:1;transform:none;transition:none}.page-motion .contact-card a:hover:after,.page-motion .help a:hover:after,.page-motion .footer-main a:hover:after{animation:none}}
