.portada-inicio {
  margin: 0 -20px 28px;
  padding: 48px 20px 40px;
  text-align: center;
  background:
    radial-gradient(circle at 20% 20%, rgba(255, 95, 162, 0.18), transparent 50%),
    radial-gradient(circle at 80% 30%, rgba(123, 63, 228, 0.18), transparent 50%);
}

.portada-inicio h2 {
  margin: 0 0 12px;
  font-size: clamp(1.8rem, 6vw, 2.8rem);
  color: var(--violeta);
}

.portada-inicio p {
  max-width: 560px;
  margin: 0 auto 22px;
  font-size: 1.05rem;
}

.portada-botones {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.boton-principal {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rosa), var(--violeta));
  color: var(--blanco);
  font-weight: bold;
  text-decoration: none;
  box-shadow: 0 6px 18px rgba(123, 63, 228, 0.3);
}

.boton-secundario {
  display: inline-block;
  padding: 12px 24px;
  border: 2px solid var(--violeta);
  border-radius: 999px;
  background: var(--blanco);
  color: var(--violeta);
  font-weight: bold;
  text-decoration: none;
}

.contenido-inicio {
  max-width: 1100px;
  margin: 0 auto;
}

.pie-pagina {
  margin-top: 40px;
  padding: 20px;
  text-align: center;
  font-size: 0.9rem;
  opacity: 0.7;
}
