/* Progressive motion: content remains visible without JavaScript. */
.site-header{transition:box-shadow .3s ease,background-color .3s ease}
.site-header.is-scrolled{background:rgba(255,255,255,.97);box-shadow:0 8px 26px #102b4610}
.business-card,.mission-grid article,.product-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.hero-product-image img{transition:transform .5s ease}
.text-link span,.nav-contact span,.product-title>span{display:inline-block;transition:transform .25s ease}
@media(hover:hover) and (pointer:fine){
  .business-card:hover,.mission-grid article:hover{transform:translateY(-6px);box-shadow:0 20px 44px #102b4612}
  .product-card:hover{transform:translateY(-5px)}
  .hero-product:hover img{transform:scale(1.045)}
  .text-link:hover span,.nav-contact:hover span,.product-card:hover .product-title>span{transform:translate(3px,-3px)}
}
@media(prefers-reduced-motion:no-preference){
  .hero-copy>*{animation:lc-enter .7s cubic-bezier(.22,1,.36,1) backwards}
  .hero-copy>:nth-child(2){animation-delay:.08s}
  .hero-copy>:nth-child(3){animation-delay:.16s}
  .hero-copy>:nth-child(4){animation-delay:.24s}
  .hero-copy>:nth-child(5){animation-delay:.32s}
  .hero-showcase{animation:lc-enter .8s .15s cubic-bezier(.22,1,.36,1) backwards}
  /* A brief opening float; settles within five seconds. */
  .hero-product-image{animation:lc-float 4s ease-in-out 1}
  .hero-product:nth-child(2) .hero-product-image{animation-delay:.2s}
  .hero-product:nth-child(3) .hero-product-image{animation-delay:.4s}
  @keyframes lc-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
  @keyframes lc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .business-card:hover,.mission-grid article:hover,.product-card:hover,.hero-product:hover,.hero-product:nth-child(1):hover,.button:hover{transform:none}
  .hero-product:nth-child(1):hover{transform:translateY(-16px)}
  .hero-product:hover img,.product-card a:hover .product-visual img,.text-link:hover span,.nav-contact:hover span,.product-card:hover .product-title>span{transform:none}
}
@media print{.site-header{box-shadow:none}.hero-copy>*,.hero-showcase,.hero-product-image{animation:none!important}}
