/* Réseaux sociaux : pied de page (toutes les pages) et section « Le regard de La Thib » (accueil). */
.social-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}

/* Pied de page : trois petits boutons ronds */
.legal-footer .footer-social{display:flex;gap:10px;margin-top:12px}
.legal-footer .footer-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid #39424b;border-radius:50%;color:#d7dee5;text-decoration:none;transition:border-color .25s,color .25s,background-color .25s,transform .25s}
.legal-footer .footer-social a:hover,.legal-footer .footer-social a:focus-visible{border-color:#5b91ce;color:#fff;background:#18324d;transform:translateY(-2px);text-decoration:none}
.legal-footer .footer-social .social-icon{width:18px;height:18px}

/* Accueil (« Le regard de La Thib ») : mêmes boutons ronds que le pied de page, un peu plus grands */
.about-social{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.about-social a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 16px 0 13px;border:1px solid #39424b;border-radius:999px;color:#d7dee5;font:600 .95rem Barlow,Arial,sans-serif;text-decoration:none;transition:border-color .25s,color .25s,background-color .25s,transform .25s}
.about-social a:hover,.about-social a:focus-visible{border-color:#5b91ce;color:#fff;background:#18324d;transform:translateY(-2px)}
.about-social a:focus-visible{outline:2px solid #a9d2ff;outline-offset:3px}
.about-social .social-icon{width:18px;height:18px;flex-shrink:0}
@media(prefers-reduced-motion:reduce){.legal-footer .footer-social a,.about-social a{transition:none}.about-social a:hover{transform:none}}

/* Bouton X : la tête remplace la croix au survol */
.icon-swap{position:relative;display:inline-flex;flex-shrink:0;z-index:1;transition:margin .25s}
.about-social a:hover>.icon-swap,.about-social a:focus-visible>.icon-swap{margin:0 10px 0 6px}
.icon-swap .hover-face{position:absolute;left:50%;top:50%;width:48px;height:48px;max-width:none;margin:0;transform:translate(-50%,-56%) scale(.3) rotate(-12deg);opacity:0;pointer-events:none;filter:drop-shadow(0 0 1px rgba(255,255,255,.55)) drop-shadow(0 3px 6px rgba(0,0,0,.5));transition:opacity .15s,transform .3s cubic-bezier(.3,1.6,.5,1)}
.icon-swap .social-icon{transition:opacity .15s}
a:hover>.icon-swap .hover-face,a:focus-visible>.icon-swap .hover-face{opacity:1;transform:translate(-50%,-60%) scale(1) rotate(0)}
a:hover>.icon-swap .social-icon,a:focus-visible>.icon-swap .social-icon{opacity:0}
@media(prefers-reduced-motion:reduce){.icon-swap .hover-face,a:hover>.icon-swap .hover-face{transition:none;transform:translate(-50%,-56%)}}

/* Bouton Instagram : l'appareil photo se volatilise dans un flash au survol, puis revient */
a[href*="instagram.com"]{position:relative}
a[href*="instagram.com"]::after{content:'';position:absolute;top:50%;left:50%;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#fff 0,rgba(255,255,255,.9) 18%,rgba(169,210,255,.45) 42%,rgba(91,145,206,0) 68%);opacity:0;transform:translate(-50%,-50%) scale(.1);pointer-events:none;z-index:2}
.about-social a[href*="instagram.com"]::after{left:22px}
a[href*="instagram.com"]:hover::after,a[href*="instagram.com"]:focus-visible::after{animation:gfg-flash .6s ease-out}
a[href*="instagram.com"]:hover .social-icon,a[href*="instagram.com"]:focus-visible .social-icon{animation:gfg-vanish 1.3s ease-in-out}
@keyframes gfg-flash{0%{opacity:0;transform:translate(-50%,-50%) scale(.1)}12%{opacity:1;transform:translate(-50%,-50%) scale(.7)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.25)}}
@keyframes gfg-vanish{0%{opacity:1;transform:scale(1)}10%{opacity:1;transform:scale(1.18)}28%{opacity:0;transform:scale(.55)}72%{opacity:0;transform:scale(.55)}100%{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){a[href*="instagram.com"]:hover::after,a[href*="instagram.com"]:focus-visible::after,a[href*="instagram.com"]:hover .social-icon,a[href*="instagram.com"]:focus-visible .social-icon{animation:none}}

/* Logos officiels (X, Instagram, Discord — source Simple Icons) : formes pleines */
.social-icon.social-brand{fill:currentColor;stroke:none}
.legal-footer .footer-social .social-icon.social-brand{width:17px;height:17px}
.about-social .social-icon.social-brand{width:18px;height:18px}
