
.linea {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.4);
  opacity: 0;
  z-index: 0;
  transition: opacity 1s ease, transform 1s ease;
}

.v1 {
  width: 2px;
  height: 100vh;
  top: 0;
  left: 20%;
  transform: scaleY(0);
  transition-delay: 0.1s;
}
.v2 {
  width: 2px;
  height: 100vh;
  top: 0;
  left: 80%;
  transform: scaleY(0);
  transition-delay: 0.3s;
}
.h1 {
  height: 2px;
  width: 100%;
  top: 25vh;
  left: 0;
  transform: scaleX(0);
  transition-delay: 0.5s;
}
.h2 {
  height: 2px;
  width: 100%;
  top: 75vh;
  left: 0;
  transform: scaleX(0);
  transition-delay: 0.7s;
}

.linea.visible.v1,
.linea.visible.v2 {
  opacity: 1;
  transform: scaleY(1);
}
.linea.visible.h1,
.linea.visible.h2 {
  opacity: 1;
  transform: scaleX(1);
}
