
/* Estilos utilitários adicionais ao Tailwind */
.nav-link { @apply text-white/70 hover:text-white transition; }
.nav-link.active { @apply text-white; }
.mobile-link { @apply block px-3 py-2 rounded text-white/80 hover:text-white hover:bg-white/5; }
.mobile-link.active { @apply text-white bg-white/5; }
.btn-primary { @apply inline-flex items-center justify-center px-4 py-2 rounded bg-brand hover:bg-brand-dark text-white font-medium transition; }
.btn-secondary { @apply inline-flex items-center justify-center px-4 py-2 rounded border border-white/20 text-white/90 hover:text-white hover:border-white/40 transition; }
.btn-link { @apply text-brand hover:text-brand-dark underline; }

.card { @apply p-5 rounded-2xl bg-white/5 ring-1 ring-white/10; }
.feature { @apply flex items-start gap-3 p-3 rounded-xl bg-white/5 ring-1 ring-white/10; }
.feature-icon { @apply text-2xl; }
.stat { @apply p-5 rounded-2xl bg-white/5 ring-1 ring-white/10 text-center; }
.event-item { @apply flex items-center justify-between p-4 rounded-xl bg-white/5 ring-1 ring-white/10; }
.form-label { @apply block text-sm text-white/70 mb-1; }
.form-input { @apply w-full px-3 py-2 rounded bg-black/40 border border-white/20 text-white placeholder-white/40; }
.faq { @apply p-3 rounded-lg bg-white/5 ring-1 ring-white/10 mb-2; }

.cookie-banner { position: fixed; inset-inline: 0; bottom: 0; background: rgba(0,0,0,.8); border-top: 1px solid rgba(255,255,255,.1); }
.hidden { display: none; }

.prose-invert h2 { @apply mt-6; }
.prose-invert a { @apply text-brand hover:text-brand-dark underline; }
.prose-invert ul { @apply list-disc pl-5 text-white/80; }

/* Pequenas animações */
.card:hover { transform: translateY(-2px); transition: transform .2s ease; }
