/* ===================== HOME  ===================== */
.home {
  margin-top: 150px;
  position: relative;
  padding: 100px 20px;
  text-align: center;
  min-height: 90vh;
}

.home h1 {
  font-size: 60px;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 10px;
}

.home .brand-name {
  font-size: 80px;
  color: #00d4ff;
  font-family: 'Poppins', sans-serif;
  text-shadow: 0 0 10px rgba(0, 212, 255, 0.3);
}

.home p {
  font-size: 20px;
  margin-top: 20px;
  color: #e0e0e0;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.btn {
  display: inline-block;
  padding: 15px 40px;
  background: #00d4ff;
  color: #0a0f1e;
  border-radius: 30px;
  text-decoration: none;
  font-size: 18px;
  font-weight: bold;
  margin-top: 30px;
  transition: background-color 0.3s, transform 0.3s;
}

.btn:hover {
  background-color: #00a7cc;
  transform: scale(1.05);
}

.background-images img {
  position: absolute;
  width: 120px;
  opacity: 0.3;
  pointer-events: none;
  z-index: -1;
}


/* Animações */
.fade-in {
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 1s forwards;
}

.delay-1 {
  animation-delay: 0.3s;
}

.delay-2 {
  animation-delay: 0.6s;
}

.delay-3 {
  animation-delay: 0.9s;
}

.delay-4 {
  animation-delay: 1.2s;
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


.background-images img {
  position: absolute;
  width: 120px;
  opacity: 0.3;
  pointer-events: none;
  z-index: -1;
  transition: transform 0.2s ease-out;
}



/* Responsivo */
@media (max-width: 768px) {
  .home h1 {
    font-size: 40px;
  }

  .home .brand-name {
    font-size: 50px;
  }

  .background-images img {
    width: 80px;
  }

  .btn {
    padding: 12px 30px;
    font-size: 16px;
  }
}

.typing .word {
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  min-width: 1ch;
  /* garante espaço para o cursor */
}

.typing .word::after {
  content: "|";
  margin-left: 4px;
  animation: blink 0.7s step-end infinite;
  opacity: 0;
}

.typing .word.typing-active::after {
  opacity: 1;
}

@keyframes blink {
  50% {
    opacity: 0;
  }
}

@media (max-width: 768px) {
  .typing {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .typing .word {
    margin: -5px 0;
  }
}

.typing .word::after {
  content: "|";
  margin-left: 4px;
  animation: blink 0.7s step-end infinite;
  opacity: 0;
}

.typing .word.typing-active::after {
  opacity: 1;
}

.typing .word.finished::after {
  content: none;
  /* remove completamente o cursor */
}
