* {
  margin: 0;
  padding: 0;
  font-family: Arial;
  box-sizing: border-box;
}

body {
  background-color: rgb(255, 177, 216);
  background-image: url('img/heart64.png');

  height: 100dvh;
}

header {
  background-color: rgb(255, 80, 80);
  font-size: 1.25rem;
  text-align: center;
  color: #fff;
  padding: 30px;
}

@keyframes glow {
  0% {
    filter: drop-shadow(0);
  }
  50% {
    filter: drop-shadow(0 0 27px #fff);
  }
  100% {
    filter: drop-shadow(0);
  }
}

section {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;

  img#robus {
    max-width: 100%;
    transition: opacity 1s ease;
    opacity: 0;
  }

  img#mail {
    position: absolute;
    height: 100px;
    bottom: 30px;
    right: 40px;
    opacity: 0;

    transition:
      opacity 1s ease,
      left 1s ease,
      top 1s ease;
    animation: glow 2s infinite ease;
  }

  div#text {
    position: absolute;
    height: 60px;
    left: 50%;
    bottom: calc(100% + 20px);
    transform: translate(-50%);
    background-color: #fff;
    border: 1px solid black;
    width: 80%;
    border-radius: 10px;
    padding: 10px;
    opacity: 0;
    transition: opacity 0.15s ease;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

main {
  width: 80%;
  position: fixed;
  left: 50%;
  top: -100%;
  transform: translate(-50%, -50%);
  transition: top 1s ease;

  article {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-height: 300px;
    background: #ffffffe8;
    margin-inline: auto;
    border-radius: 10px;

    span {
      color: rgb(255, 81, 81);
      font-weight: bold;
    }

    ul {
      padding-left: 10px;
      list-style: inside;
    }
  }
}
