/* Gentle, one-time entrances; no scroll hijacking or content-hidden states. */
.hero-copy>*{animation-duration:1.15s;animation-timing-function:cubic-bezier(.16,1,.3,1)}
.hero .eyebrow{animation-delay:.06s}.hero h1{animation-delay:.16s}.hero-description{animation-delay:.29s}.hero-actions{animation-delay:.4s}.hero .scroll-cue{animation-delay:.52s}
.hero-photo>img{animation:hero-drift 11s cubic-bezier(.16,1,.3,1) both}
.hero-photo figcaption{animation:caption-in 1.2s cubic-bezier(.16,1,.3,1) .45s both}
.button,.big-arrow{transition:background .4s,transform .55s cubic-bezier(.16,1,.3,1),box-shadow .4s}
.button>span,.header-phone>span:last-child,.underlined-link>span[aria-hidden]{transition:transform .55s cubic-bezier(.16,1,.3,1)}
.project-image>img{transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.image-button{transition:background .35s,transform .55s cubic-bezier(.16,1,.3,1)}
.craft-list article{transition:border-color .45s}
.navigation.open{animation:menu-flow .45s cubic-bezier(.16,1,.3,1) both}
.faq-list details[open]>p{animation:caption-in .55s cubic-bezier(.16,1,.3,1) both}
@media(hover:hover) and (pointer:fine){
 .button:hover>span,.header-phone:hover>span:last-child,.underlined-link:hover>span[aria-hidden]{transform:translate(3px,-3px)}
 .project-image:hover .image-button{transform:translateY(-4px)}
 .craft-list article:hover{border-bottom-color:#9c8157}
}
@keyframes hero-drift{from{transform:scale(1.09)}to{transform:scale(1.045)}}
@keyframes caption-in{from{opacity:.15;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes menu-flow{from{opacity:.2;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:980px){.hero-photo>img{animation-duration:5s;translate:none!important}}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .hero-photo>img{transform:none!important;translate:none!important}
 .button>span,.header-phone>span:last-child,.underlined-link>span[aria-hidden],.image-button{transform:none!important}
}
