/* Estilo ciberpunk y retro net art con holograma */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700&display=swap');

body {
    font-family: 'Orbitron', sans-serif;
    text-align: center;
    background-color: #0a0a0a;
    color: #00ffcc;
    margin: 0;
    padding: 0;
    text-shadow: 0 0 10px #00ffcc;
    overflow-x: hidden;
}

header {
    text-align: center;
    padding: 20px;
    background: linear-gradient(90deg, #003322, #000000, #220011);
    box-shadow: 0 0 15px #00ffcc;
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid #004433;
}

header h1 {
    font-size: 3rem;
    color: #00ffcc;
    text-transform: uppercase;
    letter-spacing: 3px;
    animation: hologram 6s infinite ease-in-out;
    position: relative;
}

/* Efecto holograma */
@keyframes hologram {0% {
    color: #00ffcc;
    filter: hue-rotate(0deg) brightness(100%);
    text-shadow:
      1px 1px 2px #00ffcc,
      -1px -1px 2px rgba(0, 255, 204, 0.5),
      2px 0px 4px rgba(255, 0, 255, 0.3);
    transform: translateY(0) skewX(0deg);
    opacity: 0.95;
  }
  25% {
    color: #33ffee;
    filter: hue-rotate(15deg) brightness(105%);
    text-shadow:
      2px -2px 3px rgba(0, 255, 204, 0.6),
      -2px 2px 3px rgba(255, 0, 255, 0.4);
    transform: translateY(-0.5px) skewX(1deg);
    opacity: 0.97;
  }
  50% {
    color: #00ffff;
    filter: hue-rotate(30deg) brightness(95%);
    text-shadow:
      0 0 6px #00ffcc,
      0 0 12px rgba(0, 255, 204, 0.3),
      1px 1px 3px rgba(255, 0, 255, 0.2);
    transform: translateY(0.5px) skewX(-1deg);
    opacity: 0.94;
  }
  75% {
    color: #66ffff;
    filter: hue-rotate(20deg) brightness(102%);
    text-shadow:
      -2px 2px 4px rgba(0, 255, 204, 0.4),
      2px -2px 4px rgba(255, 0, 255, 0.3);
    transform: translateY(0px) skewX(0.5deg);
    opacity: 0.96;
  }
  100% {
    color: #00ffcc;
    filter: hue-rotate(0deg) brightness(100%);
    text-shadow:
      1px -1px 2px #00ffcc,
      -1px 1px 2px rgba(0, 255, 204, 0.4),
      2px 0px 4px rgba(255, 0, 255, 0.2);
    transform: translateY(0) skewX(0deg);
    opacity: 0.95;
  }
}

nav ul {
    display: flex;
    justify-content: center;
    padding: 0;
    list-style-type: none;
    background: rgba(0, 255, 255, 0.05);
    border: 1px solid #004433;
    box-shadow: 0 0 10px #004433;
    padding: 10px;
}

nav ul li {
    margin: 0 20px;
}

nav ul li a {
    font-size: 2rem;
    color: #ff0055;
    text-decoration: none;
    transition: all 0.3s;
    text-shadow: 0 0 5px #ff0055;
}

nav ul li a:hover {
    color: #00ffff;
    text-shadow: 0 0 15px #00ffff;
    transform: scale(1.1);
}

footer {
    text-align: center;
    padding: 10px;
    font-size: 1rem;
    background: rgba(0, 255, 255, 0.05);
    box-shadow: 0 0 10px #004433;
}

/* Estilo para la biografía */
#biography {
    padding: 20px;
    text-align: center;
    background: #002b36;
    border: 2px solid #00ffff;
    box-shadow: 0 0 15px #00ffff;
    max-width: 800px;
    margin: 40px auto;
    border-radius: 10px;
}

#bio {
    font-size: 1.5rem;
    line-height: 1.6;
    color: #00ffcc;
    text-shadow: 0 0 5px #00ffcc;
    animation: none;
}
.icon-img {
    width: 36px;
    height: 36px;
    image-rendering: pixelated;
    transition: all 0.3s ease;

}

/* Efecto al pasar el mouse */
.custom-icon:hover .icon-img {
    transform: scale(1.2) rotate(2deg);
  ;
}
@media (max-width: 768px) {
  header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    padding: 10px 15px;
  }

  header h1 {
    transition: transform 0.6s ease, opacity 0.6s ease;
    margin: 0;
    font-size: 1.5rem;
    max-width: 60%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  header.hide-title h1 {
    transform: translateX(-120%);
    opacity: 0;
    pointer-events: none;
  }

  nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    flex-wrap: nowrap;
  }

  nav ul li {
    margin: 0;
  }

  nav ul li a {
    font-size: 1.6rem;
  }

  .icon-img {
    width: 30px;
    height: 30px;
  }
}
@media (max-width: 480px) {
  header h1 {
    font-size: 2.2rem;
  }
}
@media (max-width: 480px) {
  header h1 {
    font-size: 2.4rem;
    white-space: normal;
  }
}
@media (max-width: 600px) {
  header {
    flex-direction: column;
    align-items: center;
  }

  header h1 {
    font-size: 2rem;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    margin-bottom: 10px;
  }

  nav ul {
    flex-wrap: wrap;
    gap: 10px;
  }
}

/* Opción alternativa: ocultar h1 completamente en pantallas muy chicas */
@media (max-width: 400px) {
  header h1 {
    display: none;
  }
}