.emoji-container {
  min-height: 100vh;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.emoji-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  width: 100%;
  max-width: 800px;
  perspective: 1000px;
}

.emoji-center {
  width: clamp(180px, 30vw, 550px);
  object-fit: contain;
  transform: rotateY(120deg);
  transform-style: preserve-3d;
  will-change: transform;
}

.emoji-left {
  width: clamp(75px, 12vw, 220px);
  object-fit: contain;
  align-self: flex-end;
  transform: translateX(-100vw);
  will-change: transform;
}

.emoji-right {
  width: clamp(75px, 12vw, 220px);
  object-fit: contain;
  align-self: flex-start;
  transform: translateX(100vw);
  will-change: transform;
}

.emoji-container .project-subtitle {
  margin-top: 50px;
  margin-bottom: 0px;
  color: #8f4d8d;
  text-align: center;
  font-size: clamp(18px, 3vw, 50px);
  font-weight: 300;
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.emoji-container .project-title {
  margin-top: 0px;
  margin-bottom: 15px;
  color: #8f4d8d;
  text-align: center;
  font-size: clamp(50px, 10vw, 100px);
  font-weight: 800;
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.emoji-container .project-subtitle.visible, .emoji-container .project-title.visible {
  opacity: 1;
  transform: translateY(0);
}

.emoji-container .more-button {
  background-color: #8f4d8d;
}

body.dark-mode .emoji-container .project-title, body.dark-mode .emoji-container .project-subtitle {
  color: #d9a7d7;
}

body.dark-mode .emoji-container .more-button {
  background-color: #d9a7d7;
  color: #1e2545;
}

@media (max-width: 800px) {
  .emoji-container {
    overflow-x: hidden;
  }
}
