html { scroll-behavior: smooth; }
body { font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; -webkit-font-smoothing: antialiased; }

.animate-fade { animation: fadeUp .7s ease both; }
@keyframes fadeUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }

.animate-float { animation: float 6s ease-in-out infinite; }
@keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-14px); } }

.glass { background: rgba(255,255,255,0.08); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,0.18); }

.card-hover { transition: transform .35s ease, box-shadow .35s ease; }
.card-hover:hover { transform: translateY(-6px); box-shadow: 0 24px 48px -20px rgba(15,23,42,0.25); }

.btn-primary { background-image: linear-gradient(120deg, #0f766e 0%, #0ea5e9 100%); }
.btn-primary:hover { filter: brightness(1.08); }

.gradient-text { background-image: linear-gradient(120deg, #0f766e 0%, #0ea5e9 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }

.hero-mesh { background-color: #0b1f3a; background-image: radial-gradient(at 15% 20%, rgba(14,165,233,0.45) 0px, transparent 55%), radial-gradient(at 85% 10%, rgba(15,118,110,0.55) 0px, transparent 50%), radial-gradient(at 70% 85%, rgba(56,189,248,0.35) 0px, transparent 55%); }

.section-divider { height: 1px; background: linear-gradient(90deg, transparent, rgba(15,23,42,0.12), transparent); }
