/* Blink Animation */
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0.4} }
.hch-dot { animation: blink 2s infinite; }

/* Scroll Reveal */
.rv { 
  opacity: 0; 
  transform: translateY(30px); 
  transition: opacity 0.75s ease, transform 0.75s ease; 
}
.rv.in { opacity: 1; transform: none; }

.d1 { transition-delay: 0.12s; }
.d2 { transition-delay: 0.24s; }
.d3 { transition-delay: 0.36s; }

/* Toast Notification */
.toast {
  position: fixed; bottom: 2rem; right: 2rem;
  background: var(--gold); color: var(--deep-green);
  padding: 1rem 1.75rem; border-radius: 3px; font-weight: 600;
  z-index: 9999; transform: translateY(80px); opacity: 0; transition: all 0.4s;
}
.toast.show { transform: none; opacity: 1; }