/* Scroll motion uses the existing palette and leaves every image's framing intact. */
.hero-content,.hero-media,.hero h1 .outline,.hero-media::before{animation:none}
.hero-media::before{opacity:0}
.motion-heading .motion-line{display:block;overflow:clip;padding-block:.07em;margin-block:-.07em}
.motion-heading .motion-word{display:block}
.motion-metal{position:relative}
.metal-glint{position:absolute;inset:0;pointer-events:none;user-select:none;font:inherit;letter-spacing:inherit;line-height:inherit;text-transform:inherit;white-space:inherit;color:transparent;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.95) 49%,rgba(255,255,255,.65) 52%,transparent 63%);background-size:260% 100%;background-position:160% 0;background-clip:text;-webkit-background-clip:text;opacity:0}
.metal-glint::before{content:attr(data-text);position:absolute;inset:0;background:inherit;background-size:inherit;background-position:inherit;background-clip:text;-webkit-background-clip:text}
.eyebrow.has-motion-accent::before{display:none}
.motion-accent{display:inline-block;flex:0 0 42px;height:2px;background:currentColor;transform-origin:left center}
.process-grid{position:relative}
.process-track{position:absolute;top:-18px;left:30%;right:0;height:2px;background:linear-gradient(90deg,var(--orange),#fbb17d);transform-origin:left center;pointer-events:none}
.process-step{position:relative}
.step-trace{position:absolute;left:-1px;top:0;bottom:0;width:2px;background:var(--orange);transform-origin:center top;pointer-events:none}
@media(max-width:1000px){.process-track{display:none}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .hero-content,.hero-media,.hero h1 .outline,.reveal.visible,.scroll-cue span{animation:none!important}
 .metal-glint{display:none}
 .project-card,.service-card,.field-scene img,.button{transition:none}
}
@media(forced-colors:active){.metal-glint{display:none}.motion-accent,.step-trace,.process-track{background:Highlight}}
