/* BTS site motion — every rule is gated on .motion-on, which motion.js adds to
   <html>. It skips users with prefers-reduced-motion and anyone on ?motion=0;
   ?motion=1 forces motion on. No class, no animation — the page still works. */
html.motion-on .page-hero .t-eyebrow,html.motion-on .page-hero h1,html.motion-on .page-hero .lede,html.motion-on .page-hero .row,html.motion-on .page-hero .crumbs,html.motion-on .page-hero .animal,html.motion-on .page-hero .slogan{opacity:0;transform:translateY(14px);animation:heroUp .7s cubic-bezier(.22,.8,.3,1) forwards}
html.motion-on .page-hero h1{animation-delay:.08s}
html.motion-on .page-hero .lede,html.motion-on .page-hero .animal{animation-delay:.18s}
html.motion-on .page-hero .row,html.motion-on .page-hero .slogan{animation-delay:.28s}
@keyframes heroUp{to{opacity:1;transform:none}}
html.motion-on .hero-photo{opacity:0;transform:scale(1.04);animation:heroPhoto 1.6s .15s cubic-bezier(.22,.8,.3,1) forwards}
@keyframes heroPhoto{to{opacity:1;transform:none}}
html.motion-on .pillar-hero .animal-hero,html.motion-on .pillar-hero .picon{opacity:0;transform:translateY(10px) scale(.97);animation:heroUp .8s .25s cubic-bezier(.22,.8,.3,1) forwards}
html.motion-on .rv{opacity:0;transform:translateY(22px);transition:opacity .65s cubic-bezier(.22,.8,.3,1),transform .65s cubic-bezier(.22,.8,.3,1);transition-delay:var(--rvd,0s)}
html.motion-on .rv.in{opacity:1;transform:none}
html.motion-on .pcard,html.motion-on .feed-card,html.motion-on .partner,html.motion-on .product,html.motion-on .card{transition:transform .25s cubic-bezier(.22,.8,.3,1),box-shadow .25s,border-color .2s,background .2s}
html.motion-on .pcard:hover,html.motion-on .feed-card:hover,html.motion-on .partner:hover,html.motion-on .product:hover{transform:translateY(-4px);box-shadow:0 14px 30px -14px rgba(43,42,38,.28)}
html.motion-on .site-nav>a{position:relative}
html.motion-on .site-nav>a::after{content:"";position:absolute;left:13px;right:13px;bottom:-2px;height:2px;background:var(--ochre-500);transform:scaleX(0);transform-origin:left;transition:transform .25s cubic-bezier(.22,.8,.3,1)}
html.motion-on .site-nav>a:hover::after{transform:scaleX(1)}
html.motion-on .site-nav>a[aria-current="page"]::after{transform:scaleX(1)}
html.motion-on .btn{transition:transform .18s,box-shadow .18s,background .18s,color .18s,border-color .18s}
html.motion-on .btn:hover{transform:translateY(-1px)}
html.motion-on .btn:active{transform:translateY(0)}
