/* Footer-specific styles moved out of main stylesheet */
.footer { background:var(--color-bg-secondary); border-top:2px solid var(--color-neon-magenta); padding:var(--spacing-lg) 0 var(--spacing-md); }
.footer__container { display:grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap:var(--spacing-lg); margin-bottom:var(--spacing-md); }
.footer__section-title { font-size:1.25rem; color:var(--color-neon-magenta); margin-bottom:var(--spacing-sm); }
.footer__list { list-style:none; }
.footer__list-item { margin-bottom:var(--spacing-xs); }
.footer__link { color:var(--color-text-secondary); font-size:0.95rem; }
.footer__social { display:flex; gap:var(--spacing-sm); }
.footer__social-link { width:40px; height:40px; display:flex; align-items:center; justify-content:center; background:var(--color-bg-card); border:2px solid var(--color-neon-cyan); border-radius:var(--radius-sm); transition:all var(--transition-normal); }
.footer__social-link:hover, .footer__social-link:focus { background:var(--color-neon-cyan); box-shadow:var(--shadow-neon-cyan); transform:translateY(-3px); }
.footer__social-icon { width:20px; height:20px; }
.footer__social-icon { width:20px; height:20px; }
.footer__donate { border-color: var(--color-neon-magenta); color: var(--color-neon-magenta); }
.footer__donate:hover, .footer__donate:focus { background:var(--color-neon-magenta); border-color:var(--color-neon-magenta); color: #ffffff; }
.footer__donate:hover .footer__social-icon, .footer__donate:focus .footer__social-icon { color: #ffffff; }
.footer__bottom { text-align:center; padding-top:var(--spacing-md); border-top:1px solid var(--color-bg-card); }
.footer__copyright { font-size:0.875rem; color:var(--color-text-primary) !important; display:block; visibility:visible; opacity:1; }
.footer__desc { color: var(--color-text-secondary); font-size: 0.95rem; margin-bottom: 1rem; }
.footer__contact { margin-top: 0.75rem; font-size: 0.95rem; }
.footer__contact-link { color: var(--color-neon-cyan); text-decoration: none; }
.footer__contact-link:hover, .footer__contact-link:focus { text-decoration: underline; }
.footer__heart { color: var(--color-neon-magenta); }

@media (max-width: 768px) {
    .footer__container { grid-template-columns: 1fr; }
}
