.navbar{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
  background: var(--bg);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--bg);
}

.imagen-grua{
  display:block;
  margin:auto;
  width: 50%;
  height: auto;
  border-radius: 10px;
  transition: transform 0.3s ease-in-out;
}

.imagen-grua:hover{
  transform: scale(1.02);
}

#hero {
  background-image: url("../../../equipo/CATALOGO-8.jpg"); /* 👈 pon aquí tu imagen */
  height: 100vh; /* 👈 ocupa toda la pantalla */
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  text-align: center;
  position: relative;
  z-index: 1;
  background-size: cover;
  background-position: center;
  animation: cinematicHero 40s ease-in-out infinite;
  overflow: hidden;
}

@keyframes cinematicHero {
  0% {
    background-size: 100%;
    background-position: center center;
  }
  40% {
    background-size: 115%;
    background-position: top right;
  }
  70% {
    background-size: 120%;
    background-position: bottom left;
  }
  100% {
    background-size: 100%;
    background-position: center center;
  }
}

#hero::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0, 0, 0, 0.45);
  animation: fadeOverlay 8s ease-in-out infinite alternate;
}

@keyframes fadeOverlay {
  from { background: rgba(0, 0, 0, 0.35); }
  to   { background: rgba(0, 0, 0, 0.55); }
}

/* Asegurar que el contenido quede encima del overlay */
.hero-content {
  position: relative;
  z-index: 1;
  max-width: 800px;
  padding: 20px;
}

.typing {
  color: #ffffff;
  font-size: 2.8rem;
  font-weight: bold;
  border-right: 2px solid #ffd900;
  white-space: nowrap;
  overflow: hidden;
  width: 0;
  animation: typing 3s steps(39, end) forwards, blink 0.7s step-end infinite alternate;
}

/* Blink sigue igual */
@keyframes blink {
  50% { border-color: transparent; }
}

/* Escritorio */
@keyframes typing {
  to { width: 35ch; }
}

/* Tablet */
@media (max-width: 900px) {
  .typing {
    font-size: 2rem;
    animation: typingTablet 3s steps(39, end) forwards, blink 0.7s step-end infinite alternate;
  }

  @keyframes typingTablet {
    to { width: 35ch; }
  }
}

/* Móvil pequeño */
@media (max-width: 600px) {
  .typing {
    font-size: 1rem;
    animation: typingMobile 3s steps(39, end) forwards, blink 0.7s step-end infinite alternate;
  }

  @keyframes typingMobile {
    to { width: 35ch; }
  }
}