.site-footer { background: var(--dark); color: rgba(255,255,255,.85); margin-top: 40px; }
.site-footer .footer-inner { max-width: 1100px; margin: 0 auto; padding: 50px 24px 30px; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 32px; }
.site-footer .footer-col h4 { color: #fff; font-size: 15px; margin: 0 0 16px; }
.site-footer .footer-col a { display: block; color: rgba(255,255,255,.7); text-decoration: none; font-size: 14px; margin-bottom: 10px; transition: color .2s; }
.site-footer .footer-col a:hover { color: var(--primary); }
.site-footer .footer-col p { font-size: 14px; color: rgba(255,255,255,.7); margin: 0 0 10px; }
.site-footer .footer-social { display: flex; gap: 14px; }
.site-footer .footer-social a { display: inline-flex; margin: 0; color: rgba(255,255,255,.7); }
.site-footer .footer-social a:hover { color: var(--primary); }
.site-footer .footer-bottom { border-top: 1px solid rgba(255,255,255,.1); padding: 20px 24px; text-align: center; font-size: 13px; color: rgba(255,255,255,.5); }
.site-footer .footer-links { margin-bottom: 8px; }
.site-footer .footer-links a { color: rgba(255,255,255,.6); text-decoration: none; }
.site-footer .footer-links a:hover { color: var(--primary); }
.site-footer .footer-links span { margin: 0 8px; color: rgba(255,255,255,.3); }
@media (max-width: 600px) { .site-footer .footer-inner { grid-template-columns: 1fr 1fr; gap: 24px; } }

/* 全局图片Hover动效：放大+提亮+阴影，300ms过渡 */
.hover-zoom { transition: transform .3s ease, filter .3s ease, box-shadow .3s ease; }
.hover-zoom:hover { transform: scale(1.05); filter: brightness(1.08); box-shadow: 0 8px 24px rgba(0,0,0,.18); }
