 .fade-in-up {
     opacity: 0;
     transform: translateY(30px);
     animation: fadeInUp 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
 }

 .fade-in-left {
     opacity: 0;
     transform: translateX(-30px);
     animation: fadeInLeft 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
 }

 .fade-in-right {
     opacity: 0;
     transform: translateX(30px);
     animation: fadeInRight 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
 }

 .scale-in {
     opacity: 0;
     transform: scale(0.9);
     animation: scaleIn 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
 }

 .bounce-in {
     opacity: 0;
     transform: scale(0.8);
     animation: bounceIn 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
 }

 .slide-in-from-bottom {
     opacity: 0;
     transform: translateY(50px);
     animation: slideInFromBottom 0.7s cubic-bezier(0.4, 0, 0.2, 1) forwards;
 }

 /* Keyframes para las animaciones */
 @keyframes fadeInUp {
     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 @keyframes fadeInLeft {
     to {
         opacity: 1;
         transform: translateX(0);
     }
 }

 @keyframes fadeInRight {
     to {
         opacity: 1;
         transform: translateX(0);
     }
 }

 @keyframes scaleIn {
     to {
         opacity: 1;
         transform: scale(1);
     }
 }

 @keyframes bounceIn {
     to {
         opacity: 1;
         transform: scale(1);
     }
 }

 @keyframes slideInFromBottom {
     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 /* Delays escalonados */
 .delay-1 {
     animation-delay: 0.1s;
 }

 .delay-2 {
     animation-delay: 0.2s;
 }

 .delay-3 {
     animation-delay: 0.3s;
 }

 .delay-4 {
     animation-delay: 0.4s;
 }

 .delay-5 {
     animation-delay: 0.5s;
 }

 .delay-6 {
     animation-delay: 0.6s;
 }

 .delay-7 {
     animation-delay: 0.7s;
 }

 .delay-8 {
     animation-delay: 0.8s;
 }

 .pulse-glow {
     animation: pulseGlow 2s ease-in-out infinite alternate;
 }

 @keyframes pulseGlow {
     from {
         box-shadow: 0 0 10px rgba(102, 126, 234, 0.3);
     }

     to {
         box-shadow: 0 0 20px rgba(118, 75, 162, 0.5);
     }
 }

 /* Estilos originales */
 .article-title {
     font-weight: 600;
     text-decoration: none;
     line-height: 1.4;
 }

 .article-meta {
     font-size: 0.75rem;
     color: #6b7280;
     margin-top: 0.5rem;
 }

 .article-meta span {
     margin-right: 1rem;
 }

 .break-words {
     word-wrap: break-word;
     word-break: break-word;
     overflow-wrap: break-word;
     hyphens: auto;
 }

 .break-all {
     word-break: break-all;
 }

 .container {
     max-width: 1200px;
     margin: 0 auto;
     padding: 64px 24px;
 }

 /* En móvil reduce las animaciones */
 @media (max-width: 768px) {
     .pulse-glow {
         animation: none !important;
     }
 }