/* Alatunnisteen somekuvakkeet: sama tumma pohja ja sininen korostus kuin sivulla.
   Varsinaiset profiililinkit päivitetään someprofiilit.json-tiedostosta. */
.footer-social { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; max-width: 100%; min-width: 0; }
.footer-social__link, .footer-social__pending { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; border: 1px solid rgba(255,255,255,.19); border-radius: 13px; color: #CBD3E0; background: rgba(255,255,255,.035); text-decoration: none; flex: 0 0 auto; }
.footer-social__link { transition: color .2s var(--ease-out), background .2s var(--ease-out), border-color .2s var(--ease-out), transform .25s var(--spring); }
.footer-social__link:hover { color: #A3BFFF; background: rgba(76,125,255,.14); border-color: #7DA2FF; transform: translateY(-2px); }
.footer-social__link:active { transform: scale(.96); }
.footer-social__link:focus-visible { outline: 3px solid #A3BFFF; outline-offset: 4px; }
.footer-social__pending { gap: 7px; padding: 0 12px; border-style: dashed; color: #AAB5C7; background: transparent; cursor: default; }
.footer-social__soon { font-size: 11px; font-weight: 500; line-height: 1.3; }
.footer-social svg { display: block; width: 20px; height: 20px; flex: 0 0 20px; }
@media (max-width: 640px) { .footer-social { margin-top: 4px; } }
@media (prefers-reduced-motion: reduce) { .footer-social__link { transition: none; } .footer-social__link:hover, .footer-social__link:active { transform: none; } }
