@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Sora:wght@600;700;800&display=swap');

body { background: #070711; color: #e5e7eb; }
.grid-bg { background-image: linear-gradient(rgba(99,102,241,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(99,102,241,.07) 1px, transparent 1px); background-size: 48px 48px; }
.glass { background: rgba(255,255,255,.04); backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,.08); }
.glow { box-shadow: 0 0 80px -20px rgba(124,58,237,.6); }
.text-grad { background: linear-gradient(90deg,#a5b4fc,#c084fc 60%,#f0abfc); -webkit-background-clip: text; background-clip: text; color: transparent; }
.card-hover { transition: .35s; } .card-hover:hover { transform: translateY(-6px); border-color: rgba(168,85,247,.4); }
.nav-link { color: #cbd5e1; transition: .2s; } .nav-link:hover, .nav-link.active { color: #fff; }
.nav-link.active { color: #c4b5fd; }
.prose-doc h2 { font-family: 'Sora'; font-weight: 800; font-size: 1.6rem; color: #fff; margin-top: 2.5rem; margin-bottom: .75rem; }
.prose-doc h3 { font-weight: 700; color: #fff; margin-top: 1.5rem; margin-bottom: .4rem; }
.prose-doc p { color: #9aa3b2; line-height: 1.7; margin-bottom: 1rem; }
.prose-doc ul { color: #9aa3b2; line-height: 1.8; list-style: disc; padding-left: 1.25rem; margin-bottom: 1rem; }
::-webkit-scrollbar { width: 9px; } ::-webkit-scrollbar-thumb { background: rgba(255,255,255,.1); border-radius: 8px; }
html { scroll-behavior: smooth; }

/* ===== Compactação global do site (carregado depois do tailwind.css) ===== */
.text-6xl { font-size: 2.5rem; line-height: 1.06; }
.text-5xl { font-size: 2.1rem; line-height: 1.1; }
.text-4xl { font-size: 1.75rem; line-height: 1.15; }
.text-3xl { font-size: 1.45rem; line-height: 1.2; }
.text-2xl { font-size: 1.25rem; }
.text-lg  { font-size: 1.02rem; }
@media (min-width: 768px) {
  .md\:text-6xl { font-size: 2.9rem; }
  .md\:text-5xl { font-size: 2.3rem; }
  .md\:text-4xl { font-size: 1.9rem; }
}
/* espaçamento vertical das seções */
.py-24 { padding-top: 3rem; padding-bottom: 3rem; }
.py-20 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.py-16 { padding-top: 2.25rem; padding-bottom: 2.25rem; }
.pt-16 { padding-top: 2.5rem; }
.pt-14 { padding-top: 2.25rem; }
.pb-24 { padding-bottom: 3rem; }
.pb-20 { padding-bottom: 2.5rem; }
/* padding de cards/caixas grandes */
.p-10 { padding: 1.75rem; }
.p-8  { padding: 1.5rem; }
