.scroll-progress { position:fixed; left:0; top:0; z-index:2200; height:3px; width:0; background:linear-gradient(90deg,#F0C989,var(--color-accent),#F5DFC0); box-shadow:0 0 16px rgba(217,154,50,.40); pointer-events:none; }
.reveal { opacity:0; transform:translateY(38px); filter:blur(7px); transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .9s cubic-bezier(.2,.7,.2,1), filter .8s ease; will-change:transform,opacity; }
.reveal.from-left,
.reveal.from-right { transform:translateY(32px); }
.reveal.is-visible { opacity:1; transform:none; filter:blur(0); }
.reveal-delay-1 { transition-delay:.08s; }
.reveal-delay-2 { transition-delay:.16s; }
.reveal-delay-3 { transition-delay:.24s; }
.energy-line { position:absolute; left:0; right:0; bottom:0; height:1px; z-index:6; overflow:hidden; background:rgba(255,255,255,.08); }
.energy-line::before { content:""; position:absolute; top:0; width:22%; height:1px; background:linear-gradient(90deg,transparent,#E6BC76,transparent); box-shadow:0 0 18px rgba(217,154,50,.55); animation:energySweep 5s linear infinite; }
@keyframes energySweep { from{left:-24%} to{left:104%} }
.hero-glow { position:absolute; z-index:2; width:520px; height:520px; border-radius:50%; right:8%; top:16%; background:radial-gradient(circle,rgba(217,154,50,.17) 0%,rgba(217,154,50,.06) 32%,transparent 70%); filter:blur(12px); animation:glowFloat 8s ease-in-out infinite alternate; pointer-events:none; }
@keyframes glowFloat { 0%{transform:translate3d(0,0,0) scale(1)} 100%{transform:translate3d(-26px,24px,0) scale(1.08)} }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .reveal,.reveal.from-left,.reveal.from-right { opacity:1 !important; transform:none !important; filter:none !important; }
}
