*,
*::before,
*::after {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

body {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}

img {
  display: block;
  max-width: 100%;
}

#footer {
  container-type: inline-size;
  position: fixed;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  z-index: 10;
  width: 100%;
  max-width: 750px;
}

#footer img:last-of-type {
  position: absolute;
  width: 20cqw;
  right: 7cqw;
  top: 40%;
  transform: translateY(-50%);
}

#qrcode {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  padding: 20px;
  background-color: white;
  border-radius: 8px;
}

@media (min-width: 751px) {
  #qrcode {
    display: block;
  }
}

html:has([data-device="pc"]) #qrcode {
  display: block !important;
}

#socials {
  position: fixed;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: 10px;
}

#socials img {
  width: 60px;
}

#socials img.policy {
  width: 180px;
}
