/* Scroll reveal + micro-animations */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal.delay-1{transition-delay:.1s}
.reveal.delay-2{transition-delay:.2s}
.reveal.delay-3{transition-delay:.3s}
.reveal.delay-4{transition-delay:.4s}
.reveal-left{opacity:0;transform:translateX(-40px);transition:all .8s ease}
.reveal-left.visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(40px);transition:all .8s ease}
.reveal-right.visible{opacity:1;transform:translateX(0)}

@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.float{animation:floatY 4s ease-in-out infinite}

@keyframes shimmer{0%{background-position:-500px 0}100%{background-position:500px 0}}

@keyframes waveBob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(1deg)}}
.hero-ship{animation:waveBob 6s ease-in-out infinite}

/* Headline fade-in */
@keyframes riseIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.hero .eyebrow{animation:riseIn .8s ease .1s both}
.hero h1{animation:riseIn .9s ease .3s both}
.hero p{animation:riseIn .9s ease .5s both}
.hero-cta{animation:riseIn .9s ease .7s both}
