/* Estilos acotados a Nosotros; reutilizan los colores corporativos. */
.proyectos-galeria [hidden] { display: none !important; }
.proyectos-galeria h2, .proyectos-tarjeta h3 { color: var(--principal); }
.proyectos-filtros .btn {
    border: 1px solid var(--principal);
    border-radius: 999px;
    color: var(--principal);
    padding: .55rem 1.25rem;
}
.proyectos-filtros .btn[aria-pressed="true"], .proyectos-filtros .btn:hover {
    background: var(--principal);
    color: var(--blanco);
}
.proyectos-tarjeta {
    border: 1px solid var(--borde);
    border-radius: var(--radio-grande);
    box-shadow: var(--sombra);
    overflow: hidden;
    overflow-wrap: anywhere;
}
.proyectos-portada {
    display: block;
    position: relative;
    aspect-ratio: 4 / 3;
    background: var(--azul);
    color: var(--blanco);
    overflow: hidden;
}
.proyectos-portada:focus-visible { outline-offset: -4px; }
.proyectos-portada img { width: 100%; height: 100%; object-fit: cover; }
.proyectos-accion {
    position: absolute;
    bottom: .75rem;
    right: .75rem;
    left: .75rem;
    padding: .4rem .8rem;
    border-radius: var(--radio);
    background: var(--principal-oscuro);
    color: var(--blanco);
    text-align: center;
    font-size: .875rem;
}
.proyectos-video {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: .75rem;
    background: linear-gradient(135deg, var(--azul), var(--principal));
    color: var(--blanco);
}
.proyectos-video i { font-size: 3.5rem; }
.proyectos-tipo { color: var(--principal); font-size: .8rem; font-weight: 600; }
.proyectos-descripcion { white-space: pre-line; overflow-wrap: anywhere; }
.proyectos-tarjeta time { color: var(--texto-suave); }
.proyectos-modal [data-visor-contenido] { text-align: center; }
.proyectos-modal img, .proyectos-modal video {
    display: block;
    max-height: 70vh;
    max-width: 100%;
    width: auto;
    height: auto;
    margin: auto;
    border-radius: var(--radio);
}
.proyectos-modal video { width: 100%; background: var(--azul); }
