body {
  font-family: sans-serif;
  margin: 0;
  padding: 0;
  background: #f5f5f5;
  animation: gradient 10s ease infinite;
}

header {
  background-color: rgba(255, 255, 255, 0.9);
  padding: 1rem;
  text-align: center;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

header h1 {
  font-size: 2.5rem;
  margin: 0;
  line-height: 1.1;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1),
               2px 2px 5px rgba(0, 0, 0, 0.1);
  animation: text-underline 1.5s ease-in-out infinite;
}

@keyframes gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@keyframes text-underline {
  0% {
    text-decoration-color: transparent;
    text-underline-width: 0;
  }
  50% {
    text-decoration-color: tomato;
    text-underline-width: 5px;
  }
  100% {
    text-decoration-color: transparent;
    text-underline-width: 0;
  }
}

nav {
  display: flex;
  justify-content: flex-end;
  background-color: rgba(0, 0, 0, 0.1);
  padding: 1rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

nav ul {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}

nav li {
  margin: 0 1rem;
}

nav a {
  font-weight: 500;
  color: #333;
  text-transform: uppercase;
  transition: color 0.3s;
  animation: link-color 2s ease-in-out infinite;
}

nav a:hover {
  color: tomato;
}

@keyframes link-color {
  0% {
    color: #333;
    transform: rotate(0deg);
  }
  50% {
    color: tomato;
    transform: rotate(5deg);
  }
  100% {
    color: #333;
    transform: rotate(0deg);
  }
}
