/* Footer social icons: brand colours, floating, pulse ring, hover spin */
.jns-social-wrap { display: flex; flex-direction: column; gap: 10px; }
.jns-social-title { color: #fff; font-size: 1.05rem; font-weight: 600; letter-spacing: .4px; margin: 0; }
.jns-social { display: flex; flex-wrap: wrap; gap: 14px; padding: 4px 0; }
.jns-social a {
    position: relative; width: 50px; height: 50px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    color: #fff !important; font-size: 1.45rem; text-decoration: none !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .35);
    animation: jnsSocFloat 3s ease-in-out infinite;
    transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s;
}
.jns-social a:nth-child(2) { animation-delay: .4s; }
.jns-social a:nth-child(3) { animation-delay: .8s; }
.jns-social a::before {
    content: ""; position: absolute; inset: 0; border-radius: 50%;
    border: 2px solid currentColor; opacity: 0; animation: jnsSocPulse 2.4s ease-out infinite;
}
.jns-social a:nth-child(2)::before { animation-delay: .4s; }
.jns-social a:nth-child(3)::before { animation-delay: .8s; }
.jns-social a i { transition: transform .5s ease; }
.jns-social a:hover { animation-play-state: paused; transform: translateY(-6px) scale(1.14); box-shadow: 0 14px 26px rgba(0, 0, 0, .5); }
.jns-social a:hover i { transform: rotate(360deg) scale(1.05); }
.jns-soc-ig { background: radial-gradient(circle at 30% 107%, #fdf497 0, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); }
.jns-soc-wa { background: linear-gradient(135deg, #25d366, #128c7e); }
.jns-soc-yt { background: linear-gradient(135deg, #ff3b30, #c4302b); }
.jns-soc-ig::before { color: #d6249f; }
.jns-soc-wa::before { color: #25d366; }
.jns-soc-yt::before { color: #ff3b30; }
@keyframes jnsSocFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@keyframes jnsSocPulse { 0% { transform: scale(1); opacity: .7; } 100% { transform: scale(1.7); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .jns-social a, .jns-social a::before { animation: none; } }
