.scroll-progress{position:fixed;z-index:30;top:0;left:0;right:0;height:3px;background:#c9a46c;transform:scaleX(0);transform-origin:left center;pointer-events:none}
@media (prefers-reduced-motion:no-preference){
  .hero-image{animation:hero-arrive 1.3s cubic-bezier(.2,.7,.2,1) both}
  .hero-place,.hero h1,.hero-text,.hero-actions{animation:hero-copy .72s cubic-bezier(.2,.7,.2,1) both}
  .hero h1{animation-delay:.12s}.hero-text{animation-delay:.23s}.hero-actions{animation-delay:.34s}
  .motion-ready .reveal-item{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
  .motion-ready .reveal-item.is-visible{opacity:1;transform:none}
  .steps{position:relative}.steps::before{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:#b9935a;transform:scaleX(0);transform-origin:left center;transition:transform 1s ease}.steps.is-visible::before{transform:scaleX(1)}
  .service-card{overflow:hidden}.service-card::after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:#bd985d;transform:scaleX(0);transform-origin:left center;transition:transform .3s ease}.service-card:hover::after{transform:scaleX(1)}
  .button span,.text-link span,.header-contact span,.service-card.wide a span{display:inline-block;transition:transform .2s ease}.button:hover span,.text-link:hover span,.header-contact:hover span,.service-card.wide a:hover span{transform:translate(3px,-2px)}
  @keyframes hero-arrive{from{transform:scale(1.06);filter:brightness(.8)}to{transform:scale(1);filter:brightness(1)}}
  @keyframes hero-copy{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
}
@media (prefers-reduced-motion:reduce){.scroll-progress{transition:none}.reveal-item{opacity:1!important;transform:none!important}}
