/* Footer mejorado */
footer {
    background: linear-gradient(135deg, var(--gray-900) 0%, var(--gray-800) 50%, var(--gray-900) 100%);
    color: var(--white);
    position: relative;
    overflow: hidden;
}

footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 20% 80%, rgba(174, 223, 247, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(255, 111, 97, 0.1) 0%, transparent 50%);
    pointer-events: none;
}

/* Social links mejorados */
.social-link:hover {
    transform: translateY(-5px) scale(1.1);
    box-shadow: var(--shadow-xl);
}

.social-link.facebook:hover { background: #1877f2; }
.social-link.instagram:hover { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.social-link.linkedin:hover { background: #0077b5; }
.social-link.whatsapp:hover { background: #25d366; }

/* Footer links */
.footer-link {
    transition: var(--transition);
}

.footer-link:hover {
    color: var(--secondary-color);
    background: rgba(174, 223, 247, 0.1);
    transform: translateX(8px);
}

.footer-link i {
    transition: var(--transition);
}

.footer-link:hover i {
    transform: translateX(4px);
}

/* Schedule cards */
.schedule-card:hover {
    background: var(--gray-700);
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

/* Responsive Design */
@media (max-width: 768px) {
    .footer-content {
        padding: 3rem 1rem;
    }
}

/* Focus styles para accesibilidad */
.social-link:focus,
.footer-link:focus {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}

/* Print styles */
@media print {
    footer {
        display: none;
    }
}
