body {
  background: white;
  color: black;
  font-family: Helvetica, Arial, sans-serif;
  margin: 0;
  padding: 40px;
}

/* layout */
.contact {
  max-width: 600px;
}

/* label */
.label {
  font-size: 12px;
  letter-spacing: 2px;
  opacity: 0.5;
  margin-bottom: 40px;
}

/* titre */
h1 {
  font-size: 36px;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 60px;
}

/* liens */
.links a {
  display: block;
  margin-bottom: 10px;

  text-decoration: none;
  color: black;

  font-size: 14px;
  letter-spacing: 2px;
  opacity: 0.5;
}

.links a:hover {
  opacity: 1;
}

/* retour */
.back {
  margin-top: 80px;
}

.back a {
  text-decoration: none;
  font-size: 12px;
  opacity: 0.4;
}

.back a:hover {
  opacity: 1;
}

.scan-transition {
  position: fixed;
  inset: 0;
  background: white;
  z-index: 999;

  transform: translateY(-100%);
  pointer-events: none;
}

/* animation */
.scan-transition.active {
  animation: scanExit 0.5s ease forwards;
}

@keyframes scanExit {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0%);
  }
}