:root { 
  --brand: #da251c;
}

* {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Helvetica Neue", Arial;
}

.nav-link {
  padding: 0.5rem 0; 
  color: #334155;
}

.nav-link:hover {
  color: var(--brand);
}

.menu-item {
  display: block; 
  padding: 0.5rem 0.75rem; 
  border-radius: 0.75rem; 
  color: #334155;
}

.menu-item:hover {
  background: #f1f5f9; 
  color: #0f172a;
}

.link {
  color: #da251c;
}

.link:hover {
  text-decoration: underline;
}

.card {
  background: white; 
  border: 1px solid #e2e8f0; 
  border-radius: 1rem; 
  box-shadow: 0 4px 24px rgba(2,6,23,.06);
}

.badge {
  font-size: .75rem; 
  padding: .25rem .5rem; 
  border-radius: .5rem; 
  background: #e2f2fc; 
  color: #853c07;
}

.btn {
  display: inline-flex; 
  align-items: center; 
  gap: .5rem; 
  padding: .625rem 1rem; 
  border-radius: 9999px; 
  border: 1px solid #e2e8f0;
}

.btn:hover {
  box-shadow: 0 5px 22px rgba(2,6,23,.08);
}

.hero {
  background: linear-gradient(180deg, rgba(2,6,23,.03), rgba(255,255,255,1));
}

.grid-news {
  display: grid; 
  grid-template-columns: repeat(1, minmax(0, 1fr)); 
  gap: 1rem;
}

@media (min-width: 768px) {
  .grid-news {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
