
        #historiaAprossa{
            width: 100%;
            height: auto;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            position: relative;
            background-image: url('/media/HistoriaAprossa.png');
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
        }

        /* capa de oscurecimiento para resaltar contenido sobre el fondo rojo con fotos */
        #historiaAprossa::before{
            content: "";
            position: absolute;
            inset: 0;
            background: var(--color-sombra);
            z-index: 0;
        }
        #historiaAprossaContainer{
            width: 100%;
            height: 100%;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            position: relative;
            z-index: 1;
        }
        #historiaAprossaBannerTitle{
            width: 100%;
            height: 80px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            position: relative;
            z-index: 1;
            background-color: #ffffff;
        }
        #historiaAprossaTitle{
        }

        #historiaAprossaText{
            width: 80%;
            height: 100%;
            display: flex;
            flex-direction: column;
            gap: 30px;
            position: relative;
            padding: 50px 0;
            z-index: 1;
        }

        /* línea vertical central */
        #historiaAprossaText::before{
            content: "";
            position: absolute;
            top: 0;
            bottom: 0;
            left: 50%;
            width: 2px;
            transform: translateX(-50%);
            background: var(--color-blanco);
            opacity: 0.7;
        }

        /* item de la línea de tiempo */
        .timeline-item{
            position: relative;
            width: 100%;
            display: flex;
            justify-content: flex-start;
        }
        .timeline-item:nth-child(even){
            justify-content: flex-end;
        }

        .timeline-card{
            width: 45%;
            background: var(--color-blanco);
            border-radius: 12px;
            box-shadow: 0 0 10px 2px var(--color-sombra);
            padding: 20px;
            border: 1px solid var(--color-blanco);
            backdrop-filter: blur(2px);
            -webkit-backdrop-filter: blur(2px);
            /* slow pulsing animation */
            animation: pulse 4s ease-in-out infinite;
        }

        @keyframes pulse {
            0%   { transform: scale(1); }
            50%  { transform: scale(1.03); }
            100% { transform: scale(1); }
        }

        .timeline-dot{
            position: absolute;
            left: 50%;
            top: 20px;
            width: 14px;
            height: 14px;
            transform: translate(-50%, 0);
            border-radius: 50%;
            background: var(--color-rojo);
            box-shadow: 0 0 0 4px var(--color-blanco);
        }

       