/* FARO Motion System — restrained editorial motion */
:root{--faro-ease:cubic-bezier(.22,.61,.36,1);--faro-ease-out:cubic-bezier(.16,1,.3,1)}
html.faro-motion-ready [data-faro-reveal]{opacity:0;transform:translate3d(0,16px,0);transition:opacity .88s var(--faro-ease),transform 1.02s var(--faro-ease-out);transition-delay:var(--faro-delay,0ms);will-change:opacity,transform}
html.faro-motion-ready [data-faro-reveal="soft"]{transform:translate3d(0,10px,0)}
html.faro-motion-ready [data-faro-reveal="line"]{transform:translate3d(0,7px,0)}
html.faro-motion-ready [data-faro-reveal].is-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
/* hero copy enters as a composed scene rather than a generic scroll reveal */
html.faro-motion-ready body:not([data-page="heritage"]) .home-hero-copy>*{opacity:0;transform:translate3d(0,13px,0);animation:faroHeroIn .95s var(--faro-ease-out) forwards}
html.faro-motion-ready body:not([data-page="heritage"]) .home-hero-copy>*:nth-child(1){animation-delay:.10s}
html.faro-motion-ready body:not([data-page="heritage"]) .home-hero-copy>*:nth-child(2){animation-delay:.18s}
html.faro-motion-ready body:not([data-page="heritage"]) .home-hero-copy>*:nth-child(3){animation-delay:.28s}
html.faro-motion-ready body:not([data-page="heritage"]) .home-hero-copy>*:nth-child(4){animation-delay:.38s}
@keyframes faroHeroIn{to{opacity:1;transform:none}}
/* quiet interaction polish */
a,.btn,button{transition-property:color,background-color,border-color,opacity,transform,box-shadow;transition-duration:.28s;transition-timing-function:var(--faro-ease)}
@media (hover:hover) and (pointer:fine){
  .btn:hover,.hero-cta:hover{transform:translateY(-1px)}
  .site-nav a,.menu a,.footer a{transition-duration:.32s}
  .site-nav a:hover,.footer a:hover{opacity:.62}
  [data-card-link]{transition:transform .55s var(--faro-ease-out)}
  [data-card-link]:hover{transform:translateY(-2px)}
}
/* Heritage gets a slightly more ceremonial cadence */
html.faro-motion-ready body[data-page="heritage"] .heritage-hero .heritage-kicker,
html.faro-motion-ready body[data-page="heritage"] .heritage-hero h1,
html.faro-motion-ready body[data-page="heritage"] .heritage-hero .heritage-hero-copy,
html.faro-motion-ready body[data-page="heritage"] .heritage-hero .heritage-since{opacity:0;transform:translate3d(0,14px,0);animation:faroHeroIn 1.05s var(--faro-ease-out) forwards}
html.faro-motion-ready body[data-page="heritage"] .heritage-hero h1{animation-delay:.10s}
html.faro-motion-ready body[data-page="heritage"] .heritage-hero .heritage-hero-copy{animation-delay:.22s}
html.faro-motion-ready body[data-page="heritage"] .heritage-hero .heritage-since{animation-delay:.32s}
@media(max-width:767px){
 html.faro-motion-ready [data-faro-reveal]{transform:translate3d(0,11px,0);transition-duration:.72s,.84s}
 [data-card-link]:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 html.faro-motion-ready [data-faro-reveal],html.faro-motion-ready .home-hero-copy>*,html.faro-motion-ready body[data-page="heritage"] .heritage-hero *{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}
 a,.btn,button,[data-card-link]{transition:none!important}
}
