/* Lo único que no trae el CSS compilado de la web original: grupos de filtros plegables con <details>. */
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
details:not([open]) > summary .lucide-chevron-down { color: #94a3b8; }
details[open] > summary .lucide-chevron-down { transform: rotate(180deg); }

/* Menú del teléfono (cabecera.html): casilla oculta + panel; sin JavaScript. */
.menu-movil-casilla { position: absolute; opacity: 0; pointer-events: none; }
.menu-movil-casilla:not(:checked) ~ .menu-movil-panel { display: none; }
.menu-movil-casilla:not(:checked) ~ div .menu-cerrar { display: none; }
.menu-movil-casilla:checked ~ div .menu-abrir { display: none; }
.menu-movil-casilla:focus-visible ~ div label { outline: 2px solid #fff; }

/* Entradas equivalentes a las de la portada y «Nosotros» originales. */
@keyframes entrar-arriba { from { opacity: 0; transform: translateY(var(--entrada-distancia, 30px)); } to { opacity: 1; transform: translateY(0); } }
@keyframes entrar-lateral { from { opacity: 0; transform: translateX(var(--entrada-distancia, 30px)); } to { opacity: 1; transform: translateX(0); } }
@media (prefers-reduced-motion: no-preference) {
  [data-animacion].animacion-pendiente { opacity: 0; }
  [data-animacion].animacion-entrar { animation: entrar-arriba .5s ease-out backwards; }
  [data-animacion="inicio-abajo"].animacion-entrar { --entrada-distancia: 40px; animation-duration: 1s; }
  [data-animacion="inicio-derecha"].animacion-entrar { --entrada-distancia: 40px; animation: entrar-lateral 1s ease-out .3s backwards; }
  [data-animacion="hero-nosotros"].animacion-entrar { animation-duration: .8s; }
  [data-animacion="izquierda"].animacion-entrar { --entrada-distancia: -30px; animation: entrar-lateral .8s ease-out backwards; }
  [data-animacion="derecha"].animacion-entrar { animation: entrar-lateral .8s ease-out backwards; }
  [data-animacion="cifra"].animacion-entrar { --entrada-distancia: 20px; }
  [data-animacion="cifra"]:nth-child(2), [data-animacion="valor"]:nth-child(2) { animation-delay: .1s; }
  [data-animacion="cifra"]:nth-child(3), [data-animacion="valor"]:nth-child(3), [data-animacion="propuesta"]:nth-child(2) { animation-delay: .2s; }
  [data-animacion="cifra"]:nth-child(4), [data-animacion="valor"]:nth-child(4) { animation-delay: .3s; }
  .valor-animado:hover { transform: translateY(-8px) scale(1.02); }
}
@media (prefers-reduced-motion: reduce) {
  .animate-float, .animate-gradient, .animate-bounce { animation: none !important; }
}
