/* Scroll-reveal, hero breathing and line-mask title reveal.
   Hidden states live behind html.wow-js so a no-JS visitor sees everything. */
html.wow-js .wow-target{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
html.wow-js .wow-target.wow-in{opacity:1;transform:none}
html.wow-js .wow-line{display:inline-block;overflow:hidden;vertical-align:top}
html.wow-js .wow-line>span{display:inline-block;transform:translateY(115%);transition:transform .9s cubic-bezier(.16,.84,.28,1)}
html.wow-js.wow-loaded .wow-line>span{transform:none}
.offer-hero-image{overflow:hidden}
.offer-hero-image img{transform-origin:52% 46%;animation:wow-breathe 22s ease-in-out infinite alternate;will-change:transform}
@keyframes wow-breathe{from{transform:scale(1)}to{transform:scale(1.07)}}
.offer-hero-copy .eyebrow,.offer-hero-copy .offer-actions,.offer-hero-copy .offer-hero-signature{opacity:0;animation:wow-fade 1s .5s ease forwards}
.offer-hero-copy .offer-actions{animation-delay:.75s}
.offer-hero-copy .offer-hero-signature{animation-delay:1s}
@keyframes wow-fade{to{opacity:1}}
@media(prefers-reduced-motion:reduce){
 html.wow-js .wow-target,html.wow-js .wow-line>span{opacity:1!important;transform:none!important;transition:none!important}
 .offer-hero-image img{animation:none}
 .offer-hero-copy .eyebrow,.offer-hero-copy .offer-actions,.offer-hero-copy .offer-hero-signature{opacity:1;animation:none}
}
