/* AfriCyberCore — shared "concept" hero styles (light theme, Inter) */

.font-inter { font-family: 'Inter', ui-sans-serif, system-ui, sans-serif; }
.font-display { font-family: 'Outfit', 'Inter', ui-sans-serif, system-ui, sans-serif; }

/* Typewriter cursor */
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
.animate-blink { animation: blink 1s step-end infinite; }

/* motion.div drop-in (opacity 0, y20 -> in) */
@keyframes drop-in { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
.drop-in { animation: drop-in 0.6s ease-out both; }

/* check icon spring pop */
@keyframes pop { 0% { transform: scale(0); } 70% { transform: scale(1.25); } 100% { transform: scale(1); } }
.check-pop { animation: pop 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) both; }

/* feedback banner spring-in */
@keyframes banner-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.banner-in { animation: banner-in 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) both; }

/* ---- Seamless marquee logo scroller ---- */
@keyframes marquee-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.marquee-track { animation: marquee-scroll 35s linear infinite; }
.marquee-mask:hover .marquee-track { animation-play-state: paused; }
