.spinner {
  background-color: blueviolet;
  width: 2vw;
  height: 2vw;
  animation-name: spinner;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

@keyframes spinner {
  0% {
    background-color: cadetblue;
  }
  25% {
    background-color: burlywood;
    transform: translate(50vw) rotate(45deg) scale(0.9);
  }
  50% {
    background-color: rgb(193, 135, 222);
    transform: translate(50vw, 60vh) rotate(90deg) scale(0.8);
  }
  75% {
    background-color: rgb(222, 135, 135);
    transform: translate(0vw, 60vh) rotate(135deg) scale(0.7);
  }
  100% {
    background-color: rgb(222, 135, 135);
    transform: translate(0, 0) rotate(180deg) scale(0.6);
  }
}

h2::before {
  content: "my name mahmoud azzam";
  text-transform: capitalize;
  color: white;
  animation-name: type;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  font-size: 4vw;
}

@keyframes type {
  0% {
    content: "my";
  }
  10% {
    content: "my nam";
  }
  20% {
    content: "my name";
  }
  30% {
    content: "my name ma";
  }
  40% {
    content: "my mahmoud";
  }
}

body {
  background-color: #111;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0;
  font-family: Arial, sans-serif;
  color: white;
  min-height: 0vh;
  padding: 2rem;
  box-sizing: border-box;
}

h1 {
  margin-bottom: auto;
  font-size: 5vw;
}

.eyes {
  display: flex;
  gap: 5vw;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 2rem;
}

.eye {
  background: #f2f2f2;
  width: 12vw;
  height: 12vw;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  min-width: 50px;
  min-height: 50px;
}

.pupil {
  width: 4vw;
  height: 4vw;
  background: black;
  border-radius: 50%;
  position: absolute;
  animation: movePupil 2s infinite alternate ease-in-out;
  min-width: 10px;
  min-height: 10px;
}

@keyframes movePupil {
  0% {
    transform: translateX(-2vw);
  }
  100% {
    transform: translateX(2vw);
  }
}

/* Responsive Breakpoints */
@media (max-width: 600px) {
  h1 {
    font-size: 6vw;
  }

  h2::before {
    font-size: 5vw;
  }

  .eye {
    width: 20vw;
    height: 20vw;
  }

  .pupil {
    width: 6vw;
    height: 6vw;
  }
}
