/* ══════════════════════════════════════════════════
   BUTTON
══════════════════════════════════════════════════ */
@keyframes float { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-12px);} }
.float { animation:float 5s ease-in-out infinite; }
.btn-primary {
  background:var(--mg); color:#0D2010; padding:15px 36px;
  border-radius:100px; font-family:'Baloo 2',cursive; font-size:16px;
  font-weight:700; text-decoration:none;
  box-shadow:0 5px 0 var(--mg-d),0 8px 24px rgba(245,166,35,.3);
  transition:transform .2s var(--spring), box-shadow .2s ease, background .5s;
  letter-spacing:.3px; display:inline-flex; align-items:center; gap:10px;
}
.btn-primary:hover {
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 8px 0 var(--mg-d),0 16px 36px rgba(245,166,35,.4);
}
.btn-primary:active { transform:translateY(-1px); }

/* ══════════════════════════════════════════════════
   SCROLL REVEAL — spring bounce
══════════════════════════════════════════════════ */
.reveal {
  opacity:0;
  transform:translateY(28px) scale(0.97);
  transition:
    opacity .7s var(--smooth),
    transform .8s var(--spring);
}
.reveal.visible { opacity:1; transform:translateY(0) scale(1); }
.reveal-delay-1 { transition-delay:.1s; }
.reveal-delay-2 { transition-delay:.22s; }
.reveal-delay-3 { transition-delay:.34s; }
