body {
  margin: 0;
  height: 100vh;
  background: radial-gradient(circle, rgb(14,14,14), rgb(78,78,78));
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: rgb(255, 252, 209);
  font-family: 'League Spartan', sans-serif;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.background {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: url('nodo135_fachada.jpg') center/cover no-repeat;
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 0;
  pointer-events: none;
}

.hero {
  position: relative;
  z-index: 1;
}

.logo {
  width: 300px;
  transition: transform 0.4s ease;
}

.top-text {
  font-size: 2.5rem;
  margin-bottom: 2rem;
  transition: transform 0.4s ease;
}

.bottom-text {
  font-size: 2.2rem;
  margin-top: 2rem;
  transition: transform 0.4s ease;
}

.hero:hover ~ .background {
    opacity: 1;
}

/* Hover effects only on desktop/laptop */
@media (min-width: 768px) {

  .hero:hover .logo {
    transform: scale(1.1);
  }

  .hero:hover .top-text,
  .hero:hover .bottom-text,
  .hero:hover .logo {
    transform: translateX(-20vw);
  }
}