/* TIPOGRAFÍA PERSONALIZADA */
@font-face {
  font-family: 'AetherBMono';
  src: url('fonts/Aether-BMono.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'NeueHaasDisplayLight';
  src: url('fonts/NeueHaasDisplayLight.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

.titulo-proyecto {
  position: sticky;
  top: 0;
  z-index: 10;
  font-family: 'AetherBMono', monospace;
  padding: 1rem 10vw;
  font-size: 1.5rem;
  color: #f2f2df; /* Color clarito para que se vea sobre el video oscuro */
  mix-blend-mode: difference; /* Opcional: efecto cool de contraste sobre video */
}



/* RESET */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  height: 100%;
  font-family: 'NeueHaasDisplayLight', sans-serif;

  color: #8ca7ad;
  scroll-behavior: smooth;
  line-height: 1.6;
  font-size: 1rem;
  letter-spacing: 0.05em;
}

/* VIDEO DE FONDO */
#background-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  z-index: -1;
}

/* NAVEGACIÓN FLOTANTE */
.floating-nav {
  position: fixed;
  top: 20px;
  right: 30px;
  z-index: 20;
}

.language-toggle {
  font-size: 0.9rem;
  opacity: 0.8;
}

.language-toggle a {
  color: #8ca7ad;
  text-decoration: none;
  margin: 0 5px;
}

.language-toggle a:hover {
  color: #efefe0;
}

/* LOGO CENTRADO */
.logo {
  position: fixed;
  top: 20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  z-index: 100;
  width: 100%;
  pointer-events: none;
}

.logo img {
  height: 60px;
  display: block;
  max-width: 100%;
  filter: brightness(1.2);
  pointer-events: none;
}

/* HAIKU */
.haiku {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 100vh;
  text-align: left;
  font-size: 1.1rem;
  font-family: 'AetherBMono', monospace;
  padding-left: 10vw;
  backdrop-filter: blur(0px);
  line-height: 1.6;
}

/* MANIFIESTO */
.manifiesto {
  padding-top: 5vh;
  padding-bottom: 50vh;
  padding-left: 10vw;
  padding-right: 60vw;
  font-size: 1.1rem;
  text-align: left;
  opacity: 0.85;
  line-height: 2;
}

/* DEFINICIÓN */
.definicion-triste {
  text-align: left;
  opacity: 0.7;
  font-size: 1.1rem;
  padding: 10vh 10vw;
  line-height: 1.5;
}

.definicion-triste h3 {
  font-family: 'AetherBMono', monospace;
}

/* INFO / ABOUT (CORREGIDO) */
.about {
  padding-top: 35vh;
  padding-bottom: 50vh;
  padding-left: 10vw;
  padding-right: 40vw; /* para no chocar con el menú */
  text-align: left;
  font-size: 1rem;
  color: #8ca7ad;
  font-family: 'AetherBMono', monospace;
}

.about h2 {
  font-family: 'AetherBMono', monospace;
  text-transform: uppercase;
  font-size: 1rem;
  margin-bottom: 1rem;
  letter-spacing: 0.05em;
}


/* CLIENTES Y COLABORADORES */
.clientes-colaboradores h3 {
  font-family: 'AetherBMono', monospace;
  color: #e7b5cd; /* rosita claro */
  text-align: center;
  font-size: 1rem;
  letter-spacing: 1px;
  margin-top: 3rem;
  margin-bottom: 6rem;
  padding-right: 60vw;
}

.lista-logos {
  list-style: none;
  max-width: 600px;
  display: grid;
  grid-template-columns: 1fr 1fr; /*este es para las columnas*/
  gap: 2rem;
  padding-left: 8vw; /* 👈 este es el nuevo */
  justify-items: start;
}




.lista-logos li {
  width: 220px; /* Puedes ajustar esto según qué tan grandes quieras los logos */
}

.lista-logos img {
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: grayscale(50%);
  transition: filter 0.3s ease, transform 0.3s ease;
}

.lista-logos img:hover {
  filter: grayscale(0%);
  transform: scale(1.03);
}


/* CONTACTO */
.contacto {
  background-color: #191a1b;
  color: #e7b5cd;
  padding: 8vh 10vw;
  text-align: left;
}

.contacto h3 {
  font-family: 'AetherBMono', monospace;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.05em;
  margin-bottom: 2rem;
}

.contacto p {
  font-size: 0.95rem;
  color: #e7b5cd;
  margin-bottom: 1rem;
}

.contacto a {
  color: #e7b5cd;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-bottom 0.3s ease;
}

.contacto a:hover {
  border-bottom: 1px solid #8ca7ad;
}

/* ANIMACIONES */
.fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: all 1s ease;
}

.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}

/* MENÚ DE PROYECTOS FIJO */
.menu-proyectos {
  position: fixed;
  top: 280px;
  right: 30px;
  z-index: 15;
  font-size: 1rem;
  opacity: 0.9;
  display: flex;
  flex-direction: column;
  align-items: end;
}

.menu-proyectos ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: right;
}

.menu-proyectos li {
  margin-bottom: 0.5rem;
}

.menu-proyectos a {
  text-decoration: none;
  color: #8ca7ad;
  font-family: 'AetherBMono', monospace;
  border-bottom: 1px solid transparent;
  transition: border-bottom 0.2s ease;
}

.menu-proyectos a:hover {
  color: #efefe0;
  border-bottom: 1px solid #8ca7ad;
}
button {
  border-style: none;
  color: inherit;
  background-color: unset;
  font-family: inherit;
  font-size: 1rem;
}

/* RESPONSIVE (MOBILE) */
@media (max-width: 768px) {
  html {
    font-size: 0.9rem;
  }

  .haiku {
    font-size: 1rem;
    padding-left: 8vw;
    padding-top: 14vh;
    padding-bottom: 14vh;
  }

  .manifiesto {
    padding-top: 14vh;
    padding-bottom: 14vh;
    padding-left: 8vw;
    padding-right: 46vw;
  }

  .definicion-triste {
    padding-top: 14vh;
    padding-bottom: 14vh;
    padding-left: 8vw;
    padding-right: 52vw;
  }

  .about {
    padding-top: 26vh;
    padding-bottom: 14vh;
    padding-left: 8vw;
    padding-right: 40vw;
    text-align: left;
  }

  .about h2 {
    font-size: 0.95rem;
  }

  .clientes-colaboradores h3 {
    padding-top: 21vh;
    padding-bottom: 0vh;
    padding-left: 9vw;
    padding-right: 26vw;
    flex-direction: column;
    text-align: left;
    gap: 4vh;
  }

  .colaboradores {
    text-align: center;
    margin-top: 2rem;
  }

  .contacto {
    padding-top: 6vh;
    padding-bottom: 10vh;
    padding-left: 8vw;
    padding-right: 8vw;
  }

  .logo img {
    height: 40px;
  }

  .language-toggle {
    display: none;
  }

  .menu-proyectos {
    font-size: 0.85rem;
    top: 350px;
  }
  .lista-logos li {
    /* Hacemos que el contenedor de cada logo sea más pequeño en móviles */
    width: 130px; /* <-- ¡Este es el ajuste! Puedes probar con un valor entre 140px y 180px */
  }
  .lista-logos {
    display: flex;
    flex-direction: column;
    align-items: left; /* <-- Esta línea los centrará verticalmente */
  }
}
@media (max-width: 768px) {
  .lista-logos {
    display:flex;
    flex-direction: column; /* o incluso 1fr si es necesario */
  }
}
/* --- ESTILOS PARA MENÚ DE PROYECTOS ACTIVOS --- */

/* 1. Por defecto, esconde la lista de proyectos solo en pantallas móviles. */
@media (max-width: 768px) {
  .menu-proyectos ul {
    display: none;
  }
}

/* 2. Cuando el menú está activo (body con clase 'proyectos-activos'),
      escondemos todas las secciones de contenido. */
body.proyectos-activos .fade-in {
  display: none;
}

/* 3. Y nos aseguramos de que la lista de proyectos sea visible en TODAS las pantallas. */
body.proyectos-activos .menu-proyectos ul {
  display: block;
}

/* 4. (Opcional) Centramos el menú en la pantalla para darle más foco
      cuando está activo. El diseño de escritorio original no se ve afectado. */
body.proyectos-activos .menu-proyectos {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80vw;
  text-align: center;
}

body.proyectos-activos .menu-proyectos ul {
  text-align: center;
}

body.proyectos-activos .menu-proyectos a {
  font-size: 1.2rem; /* Hacemos los links un poco más grandes */
  line-height: 2;   /* Aumentamos el espaciado */
}
