* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  transition: 0.2 linear;
}

html,
body {
  max-height: 100%;
  width: 100%;
  background-color: #e6e6e6;
  font-family: "Opulent", sans-serif;
  color: #000000;
  --blue: #25306b;
  --yellow: #e6e100;
  --red: #b52d39;
  --green: #006356;
}

main {
  animation: fadeInAnimation ease 2s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

@keyframes fadeInAnimation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* header */

.header {
  display: flex;
  justify-content: space-between;
  position: fixed;
  width: 100%;
  z-index: 10;
}

.navbar {
  padding: 20px;
}

.navbar-box {
  display: flex;
  position: relative;
  align-items: inline-flex;
  justify-content: x flex-end;
}

.navbar a {
  color: black;
}

a {
  color: #000000;
  text-decoration: none;
  transition: 0.2s;
  font-size: 1vw;
  text-decoration: none;
}

#name a:hover {
  font-style: italic;
  color: var(--yellow);
}

#works a:hover {
  font-style: italic;
  color: var(--blue);
}

#info a:hover {
  font-style: italic;
  color: var(--red);
}

/* Paintings */

.container {
  display: flex;
  flex-direction: column;
  padding-top: 5vh;
}

.box {
  justify-content: center;
  align-items: center;
}

.box a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  color: black;
  padding: 5rem;
}

.box p {
  text-align: center;
}

/* images */

img {
  object-fit: contain;
  transition: transform 0.1s;
}

img:hover {
  -ms-transform: scale(1.05);
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.nano {
  height: 10vh;
}

.micro {
  height: 20vh;
}

.small {
  height: 40vh;
}

.medium {
  height: 60vh;
}

.mega {
  height: 90vh;
}

/* footer */

.footer {
  display: flex;
  width: 95%;
  bottom: 0;
  justify-content: space-between;
  position: relative;
  padding: 300px 20px 20px 20px;
  align-items: flex-end;
  flex-direction: row;
}

.footer a:hover {
  font-style: italic;
  color: var(--green);
}

@media (max-width: 1200px) {
  .navbar {
    padding: 10px;
    margin-bottom: 10px;
  }

  .navbar a {
    text-decoration: none;
  }

  a {
    font-size: 4vw;
    line-height: 5vw;
  }

  .box a {
    padding: none;
  }

  img {
    padding: 1vw;
  }

  .nano {
    height: 6rem;
    max-width: 80vw;
  }

  .micro {
    height: 10rem;
    max-width: 200vw;
  }

  .small {
    height: 15rem;
    max-width: 80vw;
  }

  .medium {
    height: 20rem;
    max-width: 90vw;
  }

  .mega {
    height: 30rem;
    max-width: 90vw;
  }

  .footer {
    font-size: 1.5vw;
    line-height: 1.3vw;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-direction: column;
  }
}
