* { font-family: 'Outfit', sans-serif; }
html { scroll-behavior: smooth; }
.reveal { opacity: 0; transform: translateY(28px); transition: opacity 0.65s ease, transform 0.65s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-left { opacity: 0; transform: translateX(-28px); transition: opacity 0.65s ease, transform 0.65s ease; }
.reveal-left.visible { opacity: 1; transform: translateX(0); }
.reveal-right { opacity: 0; transform: translateX(28px); transition: opacity 0.65s ease, transform 0.65s ease; }
.reveal-right.visible { opacity: 1; transform: translateX(0); }
.nav-glass { background: rgba(255,255,255,0.0); backdrop-filter: blur(0px); transition: background 0.3s ease, backdrop-filter 0.3s ease, box-shadow 0.3s ease; }
.nav-glass.scrolled { background: rgba(255,255,255,0.95); backdrop-filter: blur(12px); box-shadow: 0 1px 24px rgba(30,68,148,0.10); }
.faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.35s ease, padding 0.25s ease; }
.faq-answer.open { max-height: 300px; }
@keyframes floatA { 0%,100% { transform: translateY(0px); } 50% { transform: translateY(-10px); } }
@keyframes floatB { 0%,100% { transform: translateY(0px); } 50% { transform: translateY(-10px); } }
.float-a { animation: floatA 3.5s ease-in-out infinite; }
.float-b { animation: floatB 3.5s ease-in-out infinite 1.2s; }
