 .fw-900 {
            font-weight: 900;
        }

        .fw-800 {
            font-weight: 800;
        }

        .fw-700 {
            font-weight: 700;
        }

        .line-red-short {
            width: 30px;
            height: 3px;
            background: #dc3545;
        }

        .line-red-thick {
            width: 100px;
            height: 5px;
            background: #dc3545;
            border-radius: 3px;
        }

        .tech-label-xs {
            font-size: 0.8rem;
            font-family: 'Courier New', monospace;
        }

        .lead-sm {
            font-size: 1.1rem;
        }

        /* Fondo de Ingeniería Decorativo (sutil) */
        .engineering-grid-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-image: linear-gradient(rgba(248, 249, 250, 0.95) 1px, transparent 1px),
                linear-gradient(90deg, rgba(248, 249, 250, 0.95) 1px, transparent 1px);
            background-size: 50px 50px;
            opacity: 0.1;
            z-index: 1;
        }

        /* Estilos de la Tarjeta Alternativa */
        .cert-card-alt {
            background: #fbfbfb;
            border: 2px solid #eee;
            border-radius: 12px;
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            cursor: pointer;
            display: flex;
            flex-direction: column;
            justify-content: space-around;
            align-items: center;
            position: relative;
            z-index: 2;
            overflow: hidden;
        }

        .cert-card-alt:hover {
            background: #fff;
            border-color: #dc3545 !important;
            transform: translateY(-8px) scale(1.05);
            box-shadow: 0 15px 30px rgba(220, 53, 69, 0.08) !important;
            z-index: 5;
        }
 
        .alt-cert-logo {
            max-height: 100px;
            /* Logos ligeramente más pequeños y nítidos */
            max-width: 100%;
            transition: 0.3s;
        }

        .cert-card-alt:hover .alt-cert-logo {
            transform: scale(1.1);
        }

        /* Pequeña etiqueta de estado debajo del logo */
        .cert-status-badge {
            font-size: 0.80rem;
            font-weight: 700;
            padding: 5px 12px;
            border-radius: 20px;
            margin-top: 15px;
            letter-spacing: 0.5px;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }

        /* Reutilización de Animaciones por CSS (fadeInUp, stagger-item) */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .animate-fade-in-up {
            animation: fadeInUp 0.8s ease-out forwards;
        }

        .stagger-item {
            opacity: 0;
            animation: fadeInUp 0.8s ease-out forwards;
            animation-delay: calc(var(--order) * 0.15s);
        }